X-Git-Url: http://secure.phpeclipse.com

diff --git a/net.sourceforge.phpeclipse.launching/src/net/sourceforge/phpdt/internal/launching/DebuggerRunner.java b/net.sourceforge.phpeclipse.launching/src/net/sourceforge/phpdt/internal/launching/DebuggerRunner.java
index 9a2f1af..13c01d4 100644
--- a/net.sourceforge.phpeclipse.launching/src/net/sourceforge/phpdt/internal/launching/DebuggerRunner.java
+++ b/net.sourceforge.phpeclipse.launching/src/net/sourceforge/phpdt/internal/launching/DebuggerRunner.java
@@ -20,94 +20,114 @@ import org.eclipse.debug.core.ILaunch;
 import org.eclipse.debug.core.model.IProcess;
 import org.eclipse.swt.widgets.Display;
 
-//import net.sourceforge.phpeclipse.resourcesview.PHPProject;
+// import net.sourceforge.phpeclipse.resourcesview.PHPProject;
 
 public class DebuggerRunner extends InterpreterRunner {
 
-  public IProcess run(InterpreterRunnerConfiguration configuration, ILaunch launch) {
-    String[] env;
-    String name, value;
-    PHPDBGProxy newPHPDBGProxy = new PHPDBGProxy(configuration.useRemoteDebugger(), configuration.getRemoteSourcePath(),
-    			configuration.usePathTranslation(),configuration.getPathMap());
-    int pos;
-
-    IProcess process = null;
-    PHPDebugTarget debugTarget = new PHPDebugTarget(launch, process);
-    newPHPDBGProxy.setDebugTarget(debugTarget);
-    newPHPDBGProxy.start();
-    if (configuration.useRemoteDebugger()) {
-      // listener for remote debuger is started
-      if (configuration.useDBGSessionInBrowser()) {
-        activateDBGSESSIDPreview(configuration,newPHPDBGProxy.getPort());
-      }
-    } else {
-      setEnvironmentVariables(configuration, newPHPDBGProxy.getPort());
-      //			env=configuration.getEnvironment();
-      process = super.run(configuration, launch);
-      debugTarget.setProcess(process);
-    }
-    launch.addDebugTarget(debugTarget);
-
-    return process;
-  }
-
-  /**
-   * Open the browser in the UI thread with the current debugger URL
-   * 
-   * @param configuration
-   * @param port 
-   */
-  protected static void activateDBGSESSIDPreview(final InterpreterRunnerConfiguration configuration, final int port) {
-    Display.getDefault().asyncExec(new Runnable() {
-       public void run() {
-         String fileName = configuration.getFileName();
-         JavaProject jproject = configuration.getProject();
-         IProject project = jproject.getProject();
-         IFile file = project.getFile(fileName);
-         BrowserUtil.showPreview(file, true, "?DBGSESSID=1@clienthost:"+port);
-       }
-    });
- }
-  protected void setEnvironmentVariables(InterpreterRunnerConfiguration configuration, int listenPort) {
-    String DBGSessID;
-    String env[] = new String[18];
-    long id = Math.round(Math.random() * 100000);
-
-    DBGSessID = "DBGSESSID=" + id + "@clienthost:" + listenPort;
-    configuration.addEnvironmentValue("HTTP_COOKIE", DBGSessID, false);
-    /*
-     * configuration.addEnvironmentValue("REDIRECT_URL",OSFilePath,true);
-     * configuration.addEnvironmentValue("REQUEST_URI",OSFilePath,true);
-     * configuration.addEnvironmentValue("PATH_INFO",OSFilePath,true);
-     * configuration.addEnvironmentValue("PATH_TRANSLATED",OSFilePath,true);
-     * configuration.addEnvironmentValue("SCRIPT_FILENAME",interpreter,true);
-     * configuration.addEnvironmentValue("SERVER_PROTOCOL","HTTP / 1.1",true);
-     */
-    /*
-     * env[0]= "HTTP_COOKIE=" + DBGSessID; env[1]= "REDIRECT_QUERY_STRING="; env[2]= "REDIRECT_STATUS=200"; env[3]= "REDIRECT_URL=" +
-     * OSFilePath; env[4]= "SERVER_SOFTWARE=DBG / 2.1"; env[5]= "SERVER_NAME=localhost"; env[6]= "SERVER_ADDR=127.0.0.1"; env[7]=
-     * "SERVER_PORT=80"; env[8]= "REMOTE_ADDR=127.0.0.1"; env[9]= "SCRIPT_FILENAME=" + interpreter; env[10]= "GATEWAY_INTERFACE=CGI /
-     * 1.1"; env[11]= "SERVER_PROTOCOL=HTTP / 1.1"; env[12]= "REQUEST_METHOD=GET"; env[13]= "QUERY_STRING=test=1"; env[14]=
-     * "REQUEST_URI=" + OSFilePath; env[15]= "PATH_INFO=" + OSFilePath; env[16]= "PATH_TRANSLATED=" + OSFilePath; env[17]=
-     * "SystemRoot=" + Environment.getenv("SystemRoot");
-     */
-    //	return env;
-  }
-
-  protected String getDebugCommandLineArgument() {
-    return "";
-  }
-
-  protected String renderLoadPath(InterpreterRunnerConfiguration configuration) {
-    StringBuffer loadPath = new StringBuffer();
-
-    JavaProject project = configuration.getProject();
-    addToLoadPath(loadPath, project.getProject());
-
-    Iterator referencedProjects = project.getReferencedProjects().iterator();
-    while (referencedProjects.hasNext())
-      addToLoadPath(loadPath, (IProject) referencedProjects.next());
-
-    return loadPath.toString();
-  }
+	public IProcess run(InterpreterRunnerConfiguration configuration,
+			ILaunch launch) {
+		//String[] env;
+		//String name, value;
+		PHPDBGProxy newPHPDBGProxy = new PHPDBGProxy (configuration.useRemoteDebugger(),
+				                                      configuration.getRemoteSourcePath(),
+				                                      configuration.usePathTranslation(),
+				                                      configuration.getPathMap(),
+				                                      configuration.useRelaunchOnScriptTermination());
+		//int pos;
+
+		IProcess process = null;
+		PHPDebugTarget debugTarget = new PHPDebugTarget(launch, process);
+		newPHPDBGProxy.setDebugTarget(debugTarget);
+		newPHPDBGProxy.start();
+		if (configuration.useRemoteDebugger()) {
+			// listener for remote debuger is started
+			if (configuration.useDBGSessionInBrowser()) {
+				activateDBGSESSIDPreview(configuration, newPHPDBGProxy
+						.getPort());
+			}
+		} else {
+			setEnvironmentVariables(configuration, newPHPDBGProxy.getPort());
+			// env=configuration.getEnvironment();
+			process = super.run(configuration, launch);
+			debugTarget.setProcess(process);
+		}
+		launch.addDebugTarget(debugTarget);
+
+		return process;
+	}
+
+	/**
+	 * Open the browser in the UI thread with the current debugger URL
+	 * 
+	 * @param configuration
+	 * @param port
+	 */
+	protected static void activateDBGSESSIDPreview(
+			final InterpreterRunnerConfiguration configuration, final int port) {
+		Display.getDefault().asyncExec(new Runnable() {
+			public void run() {
+				String fileName = configuration.getFileName();
+				JavaProject jproject = configuration.getProject();
+				IProject project = jproject.getProject();
+				IFile file = project.getFile(fileName);
+				if (configuration.useDBGSessionInExternalBrowser()) {
+					BrowserUtil.showBrowserAsExternal(file,
+							"?DBGSESSID=1@clienthost:" + port);
+				} else {
+					BrowserUtil.showPreview(file, true,
+							"?DBGSESSID=1@clienthost:" + port);
+				}
+			}
+		});
+	}
+
+	protected void setEnvironmentVariables(
+			InterpreterRunnerConfiguration configuration, int listenPort) {
+		String DBGSessID;
+		//String env[] = new String[18];
+		long id = Math.round(Math.random() * 100000);
+
+		DBGSessID = "DBGSESSID=" + id + "@clienthost:" + listenPort;
+		configuration.addEnvironmentValue("HTTP_COOKIE", DBGSessID, false);
+		/*
+		 * configuration.addEnvironmentValue("REDIRECT_URL",OSFilePath,true);
+		 * configuration.addEnvironmentValue("REQUEST_URI",OSFilePath,true);
+		 * configuration.addEnvironmentValue("PATH_INFO",OSFilePath,true);
+		 * configuration.addEnvironmentValue("PATH_TRANSLATED",OSFilePath,true);
+		 * configuration.addEnvironmentValue("SCRIPT_FILENAME",interpreter,true);
+		 * configuration.addEnvironmentValue("SERVER_PROTOCOL","HTTP /
+		 * 1.1",true);
+		 */
+		/*
+		 * env[0]= "HTTP_COOKIE=" + DBGSessID; env[1]= "REDIRECT_QUERY_STRING=";
+		 * env[2]= "REDIRECT_STATUS=200"; env[3]= "REDIRECT_URL=" + OSFilePath;
+		 * env[4]= "SERVER_SOFTWARE=DBG / 2.1"; env[5]= "SERVER_NAME=localhost";
+		 * env[6]= "SERVER_ADDR=127.0.0.1"; env[7]= "SERVER_PORT=80"; env[8]=
+		 * "REMOTE_ADDR=127.0.0.1"; env[9]= "SCRIPT_FILENAME=" + interpreter;
+		 * env[10]= "GATEWAY_INTERFACE=CGI / 1.1"; env[11]=
+		 * "SERVER_PROTOCOL=HTTP / 1.1"; env[12]= "REQUEST_METHOD=GET"; env[13]=
+		 * "QUERY_STRING=test=1"; env[14]= "REQUEST_URI=" + OSFilePath; env[15]=
+		 * "PATH_INFO=" + OSFilePath; env[16]= "PATH_TRANSLATED=" + OSFilePath;
+		 * env[17]= "SystemRoot=" + Environment.getenv("SystemRoot");
+		 */
+		// return env;
+	}
+
+	protected String getDebugCommandLineArgument() {
+		return "";
+	}
+
+	protected String renderLoadPath(InterpreterRunnerConfiguration configuration) {
+		StringBuffer loadPath = new StringBuffer();
+
+		JavaProject project = configuration.getProject();
+		addToLoadPath(loadPath, project.getProject());
+
+		Iterator referencedProjects = project.getReferencedProjects()
+				.iterator();
+		while (referencedProjects.hasNext())
+			addToLoadPath(loadPath, (IProject) referencedProjects.next());
+
+		return loadPath.toString();
+	}
 }
\ No newline at end of file