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