diff --git a/UsbSerialLibrary/src/com/hoho/android/usbserial/driver/FtdiSerialDriver.java b/UsbSerialLibrary/src/com/hoho/android/usbserial/driver/FtdiSerialDriver.java
index e3bd660..3950ddd 100644
--- a/UsbSerialLibrary/src/com/hoho/android/usbserial/driver/FtdiSerialDriver.java
+++ b/UsbSerialLibrary/src/com/hoho/android/usbserial/driver/FtdiSerialDriver.java
@@ -243,6 +243,7 @@ public class FtdiSerialDriver implements UsbSerialDriver {
             if (mConnection != null) {
                 throw new IOException("Already open");
             }
+            mConnection = connection;
 
             boolean opened = false;
             try {
@@ -258,8 +259,7 @@ public class FtdiSerialDriver implements UsbSerialDriver {
             } finally {
                 if (!opened) {
                     close();
-                } else {
-                    mConnection = connection;
+                    mConnection = null;
                 }
             }
         }