diff --git src/main/com/mongodb/ReplicaSetStatus.java src/main/com/mongodb/ReplicaSetStatus.java
index 8852fc2..b1e84e4 100644
--- src/main/com/mongodb/ReplicaSetStatus.java
+++ src/main/com/mongodb/ReplicaSetStatus.java
@@ -173,7 +173,7 @@
                 _ok = true;
                 _isMaster = res.getBoolean( "ismaster" , false );
                 _isSecondary = res.getBoolean( "secondary" , false );
-                _lastPrimarySignal = res.getString( "primary" );
+				_lastPrimarySignal = res.getString( "primary" );
 
                 if ( res.containsField( "hosts" ) ){
                     for ( Object x : (List)res.get("hosts") ){
@@ -315,9 +315,11 @@
 
         if ( _lastPrimarySignal != null ){
             n = findNode( _lastPrimarySignal );
-            n.update();
-            if ( n._isMaster )
-                return n;
+            if (n!=null){
+	            n.update();
+	            if ( n._isMaster )
+	                return n;
+            }
         }
 
         updateAll();

