X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.debug.core/src/net/sourceforge/phpdt/internal/debug/core/PHPDBGInterface.java b/net.sourceforge.phpeclipse.debug.core/src/net/sourceforge/phpdt/internal/debug/core/PHPDBGInterface.java index 9d40c3f..ddcfcb5 100644 --- a/net.sourceforge.phpeclipse.debug.core/src/net/sourceforge/phpdt/internal/debug/core/PHPDBGInterface.java +++ b/net.sourceforge.phpeclipse.debug.core/src/net/sourceforge/phpdt/internal/debug/core/PHPDBGInterface.java @@ -26,8 +26,6 @@ import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; import org.eclipse.debug.core.DebugException; -import java.io.RandomAccessFile; - /** * The interface object are created by the proxy * @@ -427,14 +425,22 @@ public class PHPDBGInterface { evalStr = new PHPDBGEvalString (stack, serGlobals); // Process serialized variables DBGVarList = evalStr.getVariables (); - PHPVariable var = (PHPVariable) DBGVarList.get (0); + if (DBGVarList.size () > 0) { // Did we get back variables? + PHPVariable var = (PHPVariable) DBGVarList.get (0); // Yes, then get the first PHPVariable + PHPValue val = (PHPValue) var.getValue (); // Get the value + + if (var.getName ().equals ("")) { // Is the root node an empty node (usually it is) + DBGVarList = val.getChildVariables (); // Then remove the empty node. + // With removing the empty root node, it wouldn't be necessary to + // set the name to an empty string. So the code below is just for + // info or in case the users want to have the empty root node. - if (var.getName ().equals ("")) { // The eclipse variable view cannot handle Variables which have an empty name + // The eclipse variable view cannot handle Variables which have an empty name // when it comes to variable tree restore operation. Without a name, no restore! - var.setName (" "); // Give a name to the variable root node. Even if it is only a space :.) - } // TODO the best would be to remove the empty root node, but this would + var.setName (" "); // Give a name to the variable root node. Even if it is only a space :-) + } // TODO the best would be to remove the empty root node, but this would // require a understanding and reworking of the PHPDBGEvalstring class. - + } return DBGVarList; // Return the variables as list } @@ -466,7 +472,10 @@ public class PHPDBGInterface { // Add command data DBGPacket.addFrame(DBGFrame1); - if(proxy.getSocket().isClosed()) return; + if (proxy.getSocket ().isClosed ()) { // Do we have a socket for DBG communication? + return; // No, then leave here + } + DBGPacket.sendPacket(os); waitResponse(1000); @@ -492,7 +501,9 @@ public class PHPDBGInterface { // Add command data DBGPacket.addFrame(DBGFrame1); - if(proxy.getSocket().isClosed()) return null; + if (proxy.getSocket ().isClosed ()) { // Do we have a socket for DBG communication? + return null; // No, then leave here + } DBGPacket.sendPacket(os); waitResponse(1000);