Index: trunk/gsinstaller/FilePath.h
===================================================================
--- trunk/gsinstaller/FilePath.h	(revision 1538)
+++ trunk/gsinstaller/FilePath.h	(revision 1539)
@@ -2,5 +2,13 @@
 #define _FILEPATH_H_
 #include <string>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
 
 class FilePath
Index: trunk/gsinstaller/configFile.h
===================================================================
--- trunk/gsinstaller/configFile.h	(revision 1538)
+++ trunk/gsinstaller/configFile.h	(revision 1539)
@@ -2,5 +2,13 @@
 #define _CONFIG_H_
 #include <string>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
 
 #include <stdio.h>
@@ -10,10 +18,12 @@
 
 typedef struct
-{ char  label[32];
-  char  data[64];
+{
+  char label[32];
+  char data[64];
 } config_item;
 
 typedef struct
-{ int         count;
+{
+  int count;
   config_item item[1];
 } config_str;
@@ -21,19 +31,19 @@
 class configureFile
 {
-	private:
-		config_str *	configstr;
-  	bool valid;
+private:
+  config_str *configstr;
+  bool valid;
 
-    bool scan(char *buffer, unsigned int &pos, unsigned int length);
-	public:
-  	configureFile(char *name);
-    char *filename(char *base);
-    bool put(char *label, char *value);
-    bool concat(char *label, char *buffer, unsigned int &space);
-    string getString(string label);
-    void get(char *label, char **to);
-  	bool store(char *);
-    bool isValid();
-    ~configureFile();
+  bool scan(char *buffer, unsigned int &pos, unsigned int length);
+public:
+  configureFile(char *name);
+  char *filename(char *base);
+  bool put(char *label, char *value);
+  bool concat(char *label, char *buffer, unsigned int &space);
+  string getString(string label);
+  void get(char *label, char **to);
+  bool store(char *);
+  bool isValid();
+  ~configureFile();
 };
 #endif
Index: trunk/gsinstaller/configurable.h
===================================================================
--- trunk/gsinstaller/configurable.h	(revision 1538)
+++ trunk/gsinstaller/configurable.h	(revision 1539)
@@ -1,21 +1,26 @@
 #ifndef _CONFIGURE_H_
+
+#include <map> // just here to include "bool" for extremely 
+               // stupid compilers (i.e. older versions of VC++)
+
 class configurable
-{ private:
-	protected:
-  public:
-  	configurable();
-    configurable(char *prompt);
-    configurable(char *prompt, char *optPrompt);
+{ 
+private:
+protected:
+public:
+  configurable();
+  configurable(char *prompt);
+  configurable(char *prompt, char *optPrompt);
 
-    void setFinal(bool isFinal);
-    bool isFinal();
-
-    void setOption(bool to);
-    bool getOption();
-    
-  	char *prompt;
-    bool  option;
-    bool	final;
-    char *optPrompt;
+  void setFinal(bool isFinal);
+  bool isFinal();
+  
+  void setOption(bool to);
+  bool getOption();
+  
+  char *prompt;
+  bool option;
+  bool final;
+  char *optPrompt;
 };
 #define _CONFIGURE_H_ 1
Index: trunk/gsinstaller/file.h
===================================================================
--- trunk/gsinstaller/file.h	(revision 1538)
+++ trunk/gsinstaller/file.h	(revision 1539)
@@ -2,5 +2,13 @@
 #include <vector>
 #include <string>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
 
 #include "DiskSpace.h"
Index: trunk/gsinstaller/gs16bit.cpp
===================================================================
--- trunk/gsinstaller/gs16bit.cpp	(revision 1538)
+++ trunk/gsinstaller/gs16bit.cpp	(revision 1539)
@@ -1,2 +1,264 @@
+#include "Splash.h"
+
+
+
+UINT		timer;
+
+HWND  	splash_window;
+
+BOOL		splash_done;
+
+HBITMAP splash_bmp;
+
+int			splash_bmpheight;
+
+
+
+void CALLBACK splash_timerproc(HWND Window, UINT Message, UINT id, DWORD time)
+
+{	splash_done	= TRUE;
+
+  KillTimer(NULL, 0);
+
+}
+
+
+
+long FAR PASCAL _export splash_windproc(HWND Window, UINT Message, WPARAM wParameter, LPARAM lParameter)
+
+{	switch (Message)
+
+	{ case WM_CREATE:
+
+  	{ timer = SetTimer(NULL, 0, 3000, (TIMERPROC) splash_timerproc);
+
+    }
+
+  	break;
+
+
+
+  	case WM_TIMER: // valid id; just kill window after timer elapses
+
+      splash_done = TRUE;
+
+    	KillTimer(Window, 0);
+
+  	break;
+
+
+
+    case WM_DESTROY:
+
+      splash_window = 0;
+
+    break;
+
+
+
+		case WM_PAINT:
+
+		{ PAINTSTRUCT	PaintInfo;
+
+    	HDC					dc, bmpDC;
+
+      BITMAP			bmpData;
+
+      POINT				origin, size;                                        
+
+
+
+			dc = BeginPaint(Window, &PaintInfo);
+
+      bmpDC	= CreateCompatibleDC(dc);
+
+      SelectObject(bmpDC, splash_bmp);
+
+
+
+      GetObject(splash_bmp, sizeof(BITMAP), (LPVOID) &bmpData);
+
+
+
+      size.x = bmpData.bmWidth;
+
+      size.y = bmpData.bmHeight;
+
+      DPtoLP(dc, &size, 1);
+
+
+
+      origin.x = 0;
+
+      origin.y = 0;
+
+      DPtoLP(dc, &origin, 1);
+
+
+
+      BitBlt(dc, 0, 0, size.x, size.y,
+
+             bmpDC, origin.x, origin.y, SRCCOPY);
+
+
+
+      DeleteDC(bmpDC);
+
+			EndPaint(Window, &PaintInfo);
+
+		}
+
+		break;
+
+
+
+    case WM_COMMAND:
+
+    break;
+
+
+
+  	default:
+
+			return(DefWindowProc(Window, Message, wParameter, lParameter));
+
+  }
+
+	return 0L;
+
+}
+
+
+
+void splash_register(HINSTANCE instance)
+
+{ WNDCLASS Class;
+
+	static bool registered = false;
+
+  if (registered == false)
+
+  {	Class.lpszClassName = "Generic:Splash";
+
+		Class.hInstance     = instance;
+
+		Class.lpfnWndProc		= (WNDPROC) splash_windproc;
+
+		Class.hCursor				= LoadCursor(NULL, IDC_ARROW);
+
+		Class.hIcon					= NULL;
+
+		Class.lpszMenuName  = NULL;
+
+		Class.hbrBackground = (HBRUSH) (COLOR_WINDOW+1);
+
+		Class.style 				= NULL;
+
+		Class.cbClsExtra		= 0;
+
+		Class.cbWndExtra		= 0;
+
+		RegisterClass(&Class);
+
+    registered	= TRUE;
+
+	}
+
+}
+
+
+
+void _export splash_show(HINSTANCE instance, unsigned int time)
+
+{ MSG 		msg;
+
+  RECT 		r;
+
+  BITMAP	bmpData;
+
+  POINT		size;
+
+  int     sx, sy;
+
+  HDC     dc;
+
+
+
+  splash_register(instance);
+
+
+
+  splash_bmp	= LoadBitmap(instance, (LPCSTR) MAKEINTRESOURCE(9007));
+
+	splash_done = FALSE;
+
+
+
+  GetObject(splash_bmp, sizeof(BITMAP), (LPVOID) &bmpData);
+
+  size.x = bmpData.bmWidth;
+
+  size.y = bmpData.bmHeight;
+
+
+
+  r.left		= 0;
+
+  r.top	 		= 0;
+
+  r.right		= size.x;
+
+  r.bottom	= size.y;
+
+  AdjustWindowRect(&r, 0, TRUE);
+
+
+
+  splash_bmpheight	= size.y;
+
+  dc = GetDC(GetDesktopWindow());
+
+  sx = GetDeviceCaps(dc, HORZRES);
+
+  sy = GetDeviceCaps(dc, VERTRES);
+
+  ReleaseDC(GetDesktopWindow(), dc);
+
+
+
+	splash_window = CreateWindow("Generic:Splash", "Greenstone Installer",
+
+																WS_DLGFRAME | WS_VISIBLE,
+
+                                (sx - r.right + r.left) / 2,
+
+                                (sy - r.bottom + r.top) / 2,
+
+                                r.right-r.left, r.bottom-r.top,
+
+                                0, 0, instance, NULL);
+
+  while (GetMessage(&msg, NULL, NULL, NULL) &&
+
+  				splash_done == FALSE)
+
+  { if (msg.message == WM_TIMER)
+
+  	{ msg.hwnd = splash_window;
+
+    }
+
+  	TranslateMessage(&msg);
+
+  	DispatchMessage(&msg);
+
+  }
+
+  DestroyWindow(splash_window);
+
+}
+
+
+
 #include <windows.h>
 
Index: trunk/gsinstaller/gsManifest.cpp
===================================================================
--- trunk/gsinstaller/gsManifest.cpp	(revision 1538)
+++ trunk/gsinstaller/gsManifest.cpp	(revision 1539)
@@ -8,104 +8,121 @@
 gsManifest::gsManifest(installManager &manager)
   : installAgent(manager)
-{	// do nothing!
+{	
+  // do nothing!
 }
 
 gsManifest::gsManifest(installManager &manager, FilePath &root)
   : installAgent(manager), fileCopyMonitor()
-{	this->getManifest(root);
-	this->expandGroups();
+{	
+  this->getManifest(root);
+  this->expandGroups();
 }
 
 bool gsManifest::getManifest(FilePath &root)
-{ FilePath *manifestPath = new FilePath((char *) root.cString(), "manifest.cfg");
-	FILE *    file;
-  DWORD			fileSize;
-  string		currentgroup;
-  char *		buffer;
-  char *		line;
-  char *		eol;
-
-	// open file handle for read access
+{
+  FilePath *manifestPath = new FilePath((char *) root.cString(), "manifest.cfg");
+  FILE *file;
+  DWORD fileSize;
+  string currentgroup;
+  char *buffer;
+  char *line;
+  char *eol;
+
+  // open file handle for read access
   file = fopen(manifestPath->cString(), "rb");
-	if (file == NULL)
-  {	return false;
-  }
+  if (file == NULL)
+    {
+      return false;
+    }
 
   // get size of file
   File f(manifestPath->cString());
-  fileSize	= f.getFileSize();
+  fileSize = f.getFileSize();
 
   // allocate buffer for whole file and read it in
-	buffer	= new char[fileSize];
+  buffer = new char[fileSize];
   if (fread(buffer, 1, fileSize, file) < fileSize)
-  {	// TODO: error handling
-  }
+    {	
+      // TODO: error handling
+    }
   fclose(file);
 
   //parse file into lines and send to the line fn
   line	= buffer;
-  while ((eol = strchr(line, '\x0a')) != NULL) 	// use 0a for the eol to remove
-                                                // dependency on dos 0d,0a eol
-  {	*eol = '\0';
-
-    this->getManifestLine(line, currentgroup);
-
-  	line = eol + 1;
-  }
+  while ((eol = strchr(line, '\x0a')) != NULL) 	
+    // use 0a for the eol to remove
+    // dependency on dos 0d,0a eol
+    {	
+      *eol = '\0';
+
+      this->getManifestLine(line, currentgroup);
+
+      line = eol + 1;
+    }
   this->getManifestLine(line, currentgroup);
 
-	delete buffer;
+  delete buffer;
   return true;
 }
 
 bool gsManifest::getManifestLine(char *line, string &group)
-{ char *eol;	// we (potentially) need to clean up the end of
-              // line, and we won't use the eol from the main
-              // getManifest fn. as for the last line it'd be
-              // null.
-
-	// clean up the start of the line
-	while (*line <= ' ' && *line != '\0')
-	{ line ++;
-  }
+{
+  char *eol; // we (potentially) need to clean up the end of
+             // line, and we won't use the eol from the main
+             // getManifest fn. as for the last line it'd be
+             // null.
+
+  // clean up the start of the line
+  while (*line <= ' ' && *line != '\0')
+    {
+      line ++;
+    }
 
   // it's a blank line - don't bother!
-  if (line == '\0')
-  {	return true;
-  }
+  if (*line == '\0')
+    {
+      return true;
+    }
 
   // clean up the end of line
-  eol	= line + strlen(line) - 1;
+  eol = line + strlen(line) - 1;
   while (*eol <= ' ' && eol >= line)
-  {	*eol = '\0';
-  	eol --;
-  }
+    {	
+      *eol = '\0';
+      eol --;
+    }
 
   // does the line end with a colon?; if so take it as a group definition
   if (*eol == ':')
-  { if (eol == line) // if it's literally just a colon do nothing
-  	{	return true;
-    }
-
-    // note the new group name
-  	string newgroup(line, 0, eol - line);
-    group = newgroup;
-  }
+    { 
+      if (eol == line) // if it's literally just a colon do nothing
+  	{
+	  return true;
+	}
+
+      // note the new group name
+      string newgroup(line, 0, eol - line);
+      group = newgroup;
+    }
   // if it starts with a hash it's just a comment line; skip it
   else if (*line == '#')
-  {	// do nothing!
-  }
+    {	
+      // do nothing!
+    }
   // an actual line of member items; read them in
   else
-  {	stringArray array;
-  	array	=	stringArray::words(line);
-
-    if (group.length() == 0)
-    {	this->manifests["all"].add(array);
-    }
-    else
-    {	this->manifests[group].add(array);
-    }
-  }
+    {	
+      stringArray array;
+      array = stringArray::words(line);
+
+      if (group.length() == 0)
+	{	
+	  this->manifests["all"].add(array);
+	}
+      else
+	{	
+	  this->manifests[group].add(array);
+	}
+    }
   return true;
 }
@@ -209,5 +226,6 @@
 
 void gsManifest::clearSelection()
-{	this->selected.empty();
+{	
+  this->selected.empty();
 }
 
@@ -226,29 +244,32 @@
  */
 bool gsManifest::copy(FilePath *source)
-{ fileCopier	copy(this);
-
-	pathStringArrayMap::iterator here = this->selected.begin();
-  pathStringArrayMap::iterator end	= this->selected.end();
+{ 
+  fileCopier copy(this);
+
+  pathStringArrayMap::iterator here = this->selected.begin();
+  pathStringArrayMap::iterator end = this->selected.end();
 
   // add all the sets to copy to the manifest
   while (here != end)
-  { FileVector *fileList;
-  	stringArray &array = (*here).second;
-    FilePath path((*here).first);
-
-    // TODO: eliminate inefficiency; we're doing FilePath->string->FilePath in
-    // effect between constructing the copy lists, and then the sets, as far
-    // as the destinations go
-  	fileList = this->selection(*source, array);
-    fileCopySet copySet(*fileList, *source, path);
-    copy.addSet(copySet);
-		delete fileList;
-    here ++;
-  }
+    {
+      FileVector *fileList;
+      stringArray &array = (*here).second;
+      FilePath path((*here).first);
+
+      // TODO: eliminate inefficiency; we're doing FilePath->string->FilePath in
+      // effect between constructing the copy lists, and then the sets, as far
+      // as the destinations go
+      fileList = this->selection(*source, array);
+      fileCopySet copySet(*fileList, *source, path);
+      copy.addSet(copySet);
+      delete fileList;
+      here ++;
+    }
 
   // check that we've got enough space @ the destination(s)
   if (!copy.checkSpace())
-  {	return false;
-  }
+    {	
+      return false;
+    }
 
   // do the actual copying
@@ -258,21 +279,26 @@
 
 void gsManifest::copied(string from, string to, bool isDir)
-{ if (isDir)
-	{	this->logAction("Manifest.CreateDir", to);
-	}
+{
+  if (isDir)
+    {
+      this->logAction("Manifest.CreateDir", to);
+    }
   else
-  {	this->logAction("Manifest.CopyFile", from, to);
-  }
+    {	
+      this->logAction("Manifest.CopyFile", from, to);
+    }
 }
 
 void gsManifest::logAction(string actionName, string file)
-{ unInstallCommand command(actionName);
-	command.addParameter(file);
+{
+  unInstallCommand command(actionName);
+  command.addParameter(file);
   manager->storeCommand(command);
 }
 
 void gsManifest::logAction(string actionName, string source, string dest)
-{	unInstallCommand command(actionName);
-	command.addParameter(source);
+{
+  unInstallCommand command(actionName);
+  command.addParameter(source);
   command.addParameter(dest);
   manager->storeCommand(command);
@@ -280,22 +306,27 @@
 
 bool gsManifest::undoAction(string actionName, stringArray &params)
-{	if (actionName == "Manifest.CreateDir" || actionName == "CreateDir")
-	{	RemoveDirectory(params[0].c_str());
-	  return true;
-  }
+{	
+  if (actionName == "Manifest.CreateDir" || actionName == "CreateDir")
+    {
+      RemoveDirectory(params[0].c_str());
+      return true;
+    }
   else if (actionName == "Manifest.CopyFile" || actionName == "CopyFile")
-	{	DeleteFile(params[1].c_str());
-  	return true;
-  }
+    {
+      DeleteFile(params[1].c_str());
+      return true;
+    }
   return false;
 }
 
 FileVector *gsManifest::selection(FilePath &root, stringArray &array)
-{	FileVector *reply = new FileVector();
+{
+  FileVector *reply = new FileVector();
 
   for (unsigned int i = 0; i < array.size(); i++)
-  { FilePath	fileName(root.pathString(), array[i]);
-  	File file(fileName.pathString());
-  	reply->push_back(file);
+  {
+    FilePath fileName(root.pathString(), array[i]);
+    File file(fileName.pathString());
+    reply->push_back(file);
   }
   return reply;
@@ -303,5 +334,6 @@
 
 FileVector *gsManifest::selection(FilePath &source, FilePath &destination)
-{	return this->selection(source, this->selected[destination]);
-}
-
+{
+  return this->selection(source, this->selected[destination]);
+}
+
Index: trunk/gsinstaller/gsManifest.h
===================================================================
--- trunk/gsinstaller/gsManifest.h	(revision 1538)
+++ trunk/gsinstaller/gsManifest.h	(revision 1539)
@@ -2,5 +2,13 @@
 #define _GSMANIFEST_H_
 #include <map>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
 
 #include "File.h"
Index: trunk/gsinstaller/gsPlatform.h
===================================================================
--- trunk/gsinstaller/gsPlatform.h	(revision 1538)
+++ trunk/gsinstaller/gsPlatform.h	(revision 1539)
@@ -2,5 +2,14 @@
 #define _GSPLATFORM_H_
 #include <string>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
+
 #include <windows.h>
 
Index: trunk/gsinstaller/gsProfile.h
===================================================================
--- trunk/gsinstaller/gsProfile.h	(revision 1538)
+++ trunk/gsinstaller/gsProfile.h	(revision 1539)
@@ -2,5 +2,14 @@
 #define _GSPROFILE_H_
 #include <string>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
+
 #include <windows.h>
 
@@ -10,16 +19,16 @@
 class gsProfile : public installAgent
 {
-	private:
-    string fileName;
+private:
+  string fileName;
 
-    void logAction(string action, string sectionName, string item, string value);
-  protected:
-  public:
-  	gsProfile(installManager &manager, string fileName);
-    bool ensureListMember(string sectionName, string listName, string listMember);
-    bool removeListMember(string sectionName, string listName, string listMember);
-    bool addListMember(string sectionName, string listName, string listMember);
-    bool writeString(string sectionName, string itemName, string itemValue);
-    bool undoAction(string actionName, stringArray &params);
+  void logAction(string action, string sectionName, string item, string value);
+protected:
+public:
+  gsProfile(installManager &manager, string fileName);
+  bool ensureListMember(string sectionName, string listName, string listMember);
+  bool removeListMember(string sectionName, string listName, string listMember);
+  bool addListMember(string sectionName, string listName, string listMember);
+  bool writeString(string sectionName, string itemName, string itemValue);
+  bool undoAction(string actionName, stringArray &params);
 };
 #endif
Index: trunk/gsinstaller/gsRegistry.h
===================================================================
--- trunk/gsinstaller/gsRegistry.h	(revision 1538)
+++ trunk/gsinstaller/gsRegistry.h	(revision 1539)
@@ -2,5 +2,13 @@
 #define _GSREGISTRY_H_
 #include <string>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
 
 #include "registry.h"
@@ -11,25 +19,26 @@
 
 class gsRegistry : public installAgent
-{	private:
-		string volumeKey;
-    string collectKey;
+{
+private:
+  string volumeKey;
+  string collectKey;
 
-    bool logAction(string action, HKEY base, string path, string item, string value);
-	public:
-  	gsRegistry(installManager &manager, configureFile &configFileb);
-		bool 			storeKeyString(	HKEY base, string path, string item, string value);
-    bool 			collectionInstalled();
-    bool 			volumeInstalled();
-    bool			ensureKeysExist();
-    bool			ensureKeyExists( HKEY base, string key);
-    bool			destroyKey(HKEY base, string key);
-    bool			destroyItem(HKEY base, string key, string name);
-    string		collectKeyId();
-    string		volumeKeyId();
-    string		exeKeyId(string exeName);
-    string    uninstallKeyId(string collectName);
-    FilePath *collectionPath();
-    bool undoAction(string ActionName, stringArray &params);
-//    Path();
+  bool logAction(string action, HKEY base, string path, string item, string value);
+public:
+  gsRegistry(installManager &manager, configureFile &configFileb);
+  bool storeKeyString(HKEY base, string path, string item, string value);
+  bool collectionInstalled();
+  bool volumeInstalled();
+  bool ensureKeysExist();
+  bool ensureKeyExists( HKEY base, string key);
+  bool destroyKey(HKEY base, string key);
+  bool destroyItem(HKEY base, string key, string name);
+  string collectKeyId();
+  string volumeKeyId();
+  string exeKeyId(string exeName);
+  string uninstallKeyId(string collectName);
+  FilePath *collectionPath();
+  bool undoAction(string ActionName, stringArray &params);
+  //    Path();
 };
 #endif
Index: trunk/gsinstaller/gsinstall.cpp
===================================================================
--- trunk/gsinstaller/gsinstall.cpp	(revision 1538)
+++ trunk/gsinstaller/gsinstall.cpp	(revision 1539)
@@ -1,5 +1,13 @@
 #include <vector>
 #include <string>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
 
 #include <stdlib.h>
Index: trunk/gsinstaller/launchApp.h
===================================================================
--- trunk/gsinstaller/launchApp.h	(revision 1538)
+++ trunk/gsinstaller/launchApp.h	(revision 1539)
@@ -3,5 +3,13 @@
 #include <string>
 #include <map>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
 
 #include "FilePath.h"
@@ -10,12 +18,13 @@
 
 class launchApp
-{	private:
-		_exeMap	exeMap;
-    string  commandline;
-	public:
-  	launchApp(FilePath &appsrc);
-    void platformApp(string platform, FilePath &appsrc);
-    void setCommandLine(string commands);
-    int run(bool test, int deftest, string prompt, string title, bool wait);
+{
+private:
+  _exeMap exeMap;
+  string commandline;
+public:
+  launchApp(FilePath &appsrc);
+  void platformApp(string platform, FilePath &appsrc);
+  void setCommandLine(string commands);
+  int run(bool test, int deftest, string prompt, string title, bool wait);
 };
 #endif
Index: trunk/gsinstaller/stringArray.h
===================================================================
--- trunk/gsinstaller/stringArray.h	(revision 1538)
+++ trunk/gsinstaller/stringArray.h	(revision 1539)
@@ -4,5 +4,14 @@
 #include <vector>
 #include <map>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
+
 #include <string.h>
 
Index: trunk/gsinstaller/unInstall.h
===================================================================
--- trunk/gsinstaller/unInstall.h	(revision 1538)
+++ trunk/gsinstaller/unInstall.h	(revision 1539)
@@ -4,5 +4,13 @@
 #include <vector>
 #include <map>
+
+// use the standard namespace
+#if !defined (GSDL_NAMESPACE_BROKEN)
+#if defined(GSDL_USE_OBJECTSPACE)
+using namespace ospace::std;
+#else
 using namespace std;
+#endif
+#endif
 
 #include <stdio.h>
