diff --git a/gogo/command/src/main/java/org/apache/felix/gogo/command/OBR.java b/gogo/command/src/main/java/org/apache/felix/gogo/command/OBR.java
index 34a137c..a8231ed 100644
--- a/gogo/command/src/main/java/org/apache/felix/gogo/command/OBR.java
+++ b/gogo/command/src/main/java/org/apache/felix/gogo/command/OBR.java
@@ -272,7 +272,7 @@
                 targetVersion = args[argIdx].substring(idx + 1);
             }
             Resource[] resources = searchRepository(ra, targetName, targetVersion);
-            if (resources == null)
+            if ((resources == null) || (resources.length == 0))
             {
                 System.err.println("Unknown bundle and/or version: " + args[argIdx]);
             }
@@ -507,13 +507,21 @@
         try
         {
             Bundle bundle = m_bc.getBundle(Long.parseLong(targetId));
-            targetId = bundle.getSymbolicName();
+            if (bundle != null)
+            {
+                targetId = bundle.getSymbolicName();
+            }
+            else
+            {
+                return null;
+            }
         }
         catch (NumberFormatException ex)
         {
             // It was not a number, so ignore.
         }
 
+
         // The targetId may be a bundle name or a bundle symbolic name,
         // so create the appropriate LDAP query.
         StringBuffer sb = new StringBuffer("(|(presentationname=");
