Blob Blame History Raw
diff -up GabeditSrc248/src/Display/PovrayGL.c.strlen GabeditSrc248/src/Display/PovrayGL.c
--- GabeditSrc248/src/Display/PovrayGL.c.strlen	2013-10-30 13:46:50.000000000 +0100
+++ GabeditSrc248/src/Display/PovrayGL.c	2014-02-16 17:18:06.320077560 +0100
@@ -1671,7 +1671,8 @@ static void exportPOVRay(GtkWidget* Win,
 		gint i;
 		if(tmp) l = strlen(tmp);
 		for(i=l-1;i>=1;i--) if(tmp[i]=='.') tmp[i]='\0';
-		if(dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
+		if(!dirName) dirName = g_strdup(g_get_current_dir());
+		if(dirName && dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
 		{
 			fileNamePOV = g_strdup_printf("%s%s%s.pov",dirName, G_DIR_SEPARATOR_S,tmp);
 			fileNameIMG = g_strdup_printf("%s%s%s.bmp",dirName, G_DIR_SEPARATOR_S,tmp);
diff -up GabeditSrc248/src/Geometry/Povray.c.strlen GabeditSrc248/src/Geometry/Povray.c
--- GabeditSrc248/src/Geometry/Povray.c.strlen	2013-10-30 13:46:51.000000000 +0100
+++ GabeditSrc248/src/Geometry/Povray.c	2014-02-16 17:18:06.320077560 +0100
@@ -1158,7 +1158,8 @@ static void exportPOVRay(GtkWidget* Win,
 		gint i;
 		if(tmp) l = strlen(tmp);
 		for(i=l-1;i>=1;i--) if(tmp[i]=='.') tmp[i]='\0';
-		if(dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
+		if(!dirName) dirName = g_strdup(g_get_current_dir());
+		if(dirName && dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
 		{
 			fileNamePOV = g_strdup_printf("%s%s%s.pov",dirName, G_DIR_SEPARATOR_S,tmp);
 			fileNameIMG = g_strdup_printf("%s%s%s.bmp",dirName, G_DIR_SEPARATOR_S,tmp);
diff -up GabeditSrc248/src/SemiEmpirical/SemiEmpiricalDlg.c.strlen GabeditSrc248/src/SemiEmpirical/SemiEmpiricalDlg.c
--- GabeditSrc248/src/SemiEmpirical/SemiEmpiricalDlg.c.strlen	2013-10-30 13:46:50.000000000 +0100
+++ GabeditSrc248/src/SemiEmpirical/SemiEmpiricalDlg.c	2014-02-16 17:18:06.322077567 +0100
@@ -1064,6 +1064,7 @@ static void runSemiEmpirical(GtkWidget*
 	{
 		gchar* dirName = gtk_file_chooser_get_current_folder (GTK_FILE_CHOOSER(buttonDirSelector));
 		gchar* tmp = g_strdup(gtk_entry_get_text(GTK_ENTRY(entryFileName)));
+		if(!dirName) dirName = g_strdup(g_get_home_dir());
 		if(dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
 			fileName = g_strdup_printf("%s%s%s",dirName, G_DIR_SEPARATOR_S,tmp);
 		else
@@ -3651,7 +3652,8 @@ static void semiEmpiricalMDConfo(GtkWidg
 	{
 		dirName = gtk_file_chooser_get_current_folder (GTK_FILE_CHOOSER(buttonDirSelector));
 		gchar* tmp = g_strdup(gtk_entry_get_text(GTK_ENTRY(entryFileNameGeom)));
-		if(dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
+		if(!dirName) dirName = g_strdup(g_get_current_dir());
+		if(dirName && dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
 			fileNameGeom = g_strdup_printf("%s%s%s",dirName, G_DIR_SEPARATOR_S,tmp);
 		else
 			fileNameGeom = g_strdup_printf("%s%s",dirName, tmp);
@@ -3669,7 +3671,8 @@ static void semiEmpiricalMDConfo(GtkWidg
 	{
 		if(!dirName) dirName = gtk_file_chooser_get_current_folder (GTK_FILE_CHOOSER(buttonDirSelector));
 		gchar* tmp = g_strdup(gtk_entry_get_text(GTK_ENTRY(entryFileNameTraj)));
-		if(dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
+		if(!dirName) dirName = g_strdup(g_get_current_dir());
+		if(dirName && dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
 			fileNameTraj = g_strdup_printf("%s%s%s",dirName, G_DIR_SEPARATOR_S,tmp);
 		else
 			fileNameTraj = g_strdup_printf("%s%s",dirName, tmp);
@@ -3681,7 +3684,8 @@ static void semiEmpiricalMDConfo(GtkWidg
 	{
 		if(!dirName) dirName = gtk_file_chooser_get_current_folder (GTK_FILE_CHOOSER(buttonDirSelector));
 		gchar* tmp = g_strdup(gtk_entry_get_text(GTK_ENTRY(entryFileNameProp)));
-		if(dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
+		if(!dirName) dirName = g_strdup(g_get_current_dir());
+		if(dirName && dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
 			fileNameProp = g_strdup_printf("%s%s%s",dirName, G_DIR_SEPARATOR_S,tmp);
 		else
 			fileNameProp = g_strdup_printf("%s%s",dirName, tmp);
@@ -3925,10 +3929,11 @@ static void semiEmpiricalMD(GtkWidget* W
 	if(stepSize>5) stepSize = 5.0;
 
 	dirName = gtk_file_chooser_get_current_folder (GTK_FILE_CHOOSER(buttonDirSelector));
+	if(!dirName) dirName = g_strdup(g_get_current_dir());
 	if(GTK_TOGGLE_BUTTON (buttonSaveTraj)->active)
 	{
 		gchar* tmp = g_strdup(gtk_entry_get_text(GTK_ENTRY(entryFileNameTraj)));
-		if(dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
+		if(dirName && dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
 			fileNameTraj = g_strdup_printf("%s%s%s",dirName, G_DIR_SEPARATOR_S,tmp);
 		else
 			fileNameTraj = g_strdup_printf("%s%s",dirName, tmp);
@@ -3938,7 +3943,7 @@ static void semiEmpiricalMD(GtkWidget* W
 	if(GTK_TOGGLE_BUTTON (buttonSaveProp)->active)
 	{
 		gchar* tmp = g_strdup(gtk_entry_get_text(GTK_ENTRY(entryFileNameProp)));
-		if(dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
+		if(dirName && dirName[strlen(dirName)-1] != G_DIR_SEPARATOR)
 			fileNameProp = g_strdup_printf("%s%s%s",dirName, G_DIR_SEPARATOR_S,tmp);
 		else
 			fileNameProp = g_strdup_printf("%s%s",dirName, tmp);