diff --git a/briar-core/src/net/sf/briar/plugins/modem/ModemImpl.java b/briar-core/src/net/sf/briar/plugins/modem/ModemImpl.java
index fd16ad237277022e797edb202722641af26c18db..53ef9c173c900c909d6b2ed27dadf99d1d0c8ddd 100644
--- a/briar-core/src/net/sf/briar/plugins/modem/ModemImpl.java
+++ b/briar-core/src/net/sf/briar/plugins/modem/ModemImpl.java
@@ -155,9 +155,9 @@ class ModemImpl implements Modem, WriteHandler, SerialPortEventListener {
 				hangUp();
 			}
 		} catch(IOException e) {
-			if(LOG.isLoggable(WARNING)) LOG.warning(e.toString());
+			if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 		} catch(SerialPortException e) {
-			if(LOG.isLoggable(WARNING)) LOG.warning(e.toString());
+			if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 		}
 	}
 
@@ -198,7 +198,7 @@ class ModemImpl implements Modem, WriteHandler, SerialPortEventListener {
 								answer();
 							} catch(IOException e) {
 								if(LOG.isLoggable(WARNING))
-									LOG.warning(e.toString());
+									LOG.log(WARNING, e.toString(), e);
 							}
 						}
 					});
@@ -239,7 +239,7 @@ class ModemImpl implements Modem, WriteHandler, SerialPortEventListener {
 		try {
 			port.closePort();
 		} catch(SerialPortException e) {
-			if(LOG.isLoggable(WARNING)) LOG.warning(e.toString());
+			if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 		}
 	}
 }
diff --git a/briar-core/src/net/sf/briar/plugins/modem/ModemPlugin.java b/briar-core/src/net/sf/briar/plugins/modem/ModemPlugin.java
index caa6fb2d156c288ca8764931b05adfce92345509..1b65b619edea878aea13e5a3c2806e4fd4510099 100644
--- a/briar-core/src/net/sf/briar/plugins/modem/ModemPlugin.java
+++ b/briar-core/src/net/sf/briar/plugins/modem/ModemPlugin.java
@@ -78,7 +78,7 @@ class ModemPlugin implements DuplexPlugin, Modem.Callback {
 				running = true;
 				return true;
 			} catch(IOException e) {
-				if(LOG.isLoggable(WARNING)) LOG.warning(e.toString());
+				if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 			}
 		}
 		return false;
@@ -98,7 +98,7 @@ class ModemPlugin implements DuplexPlugin, Modem.Callback {
 					LOG.info("Initialised modem on " + portName);
 				return true;
 			} catch(IOException e) {
-				if(LOG.isLoggable(WARNING)) LOG.warning(e.toString());
+				if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 			}
 		}
 		running = false;
@@ -142,7 +142,7 @@ class ModemPlugin implements DuplexPlugin, Modem.Callback {
 			try {
 				if(!modem.dial(number)) continue;
 			} catch(IOException e) {
-				if(LOG.isLoggable(WARNING)) LOG.warning(e.toString());
+				if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 				if(resetModem()) continue;
 				else break;
 			}
@@ -170,7 +170,7 @@ class ModemPlugin implements DuplexPlugin, Modem.Callback {
 		try {
 			if(!modem.dial(number)) return null;
 		} catch(IOException e) {
-			if(LOG.isLoggable(WARNING)) LOG.warning(e.toString());
+			if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 			resetModem();
 			return null;
 		}
@@ -218,7 +218,7 @@ class ModemPlugin implements DuplexPlugin, Modem.Callback {
 			try {
 				modem.hangUp();
 			} catch(IOException e) {
-				if(LOG.isLoggable(WARNING)) LOG.warning(e.toString());
+				if(LOG.isLoggable(WARNING)) LOG.log(WARNING, e.toString(), e);
 				exception = true;
 			}
 			if(exception) resetModem();