diff -up GabeditSrc250/src/Display/PovrayGL.c.strlen GabeditSrc250/src/Display/PovrayGL.c
--- GabeditSrc250/src/Display/PovrayGL.c.strlen 2017-07-12 00:13:34.302930668 +0200
+++ GabeditSrc250/src/Display/PovrayGL.c 2017-07-12 00:14:52.286542837 +0200
@@ -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.png",dirName, G_DIR_SEPARATOR_S,tmp);
diff -up GabeditSrc250/src/Geometry/Povray.c.strlen GabeditSrc250/src/Geometry/Povray.c
--- GabeditSrc250/src/Geometry/Povray.c.strlen 2017-07-12 00:13:34.302930668 +0200
+++ GabeditSrc250/src/Geometry/Povray.c 2017-07-12 00:15:41.326298949 +0200
@@ -1267,7 +1267,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.png",dirName, G_DIR_SEPARATOR_S,tmp);
diff -up GabeditSrc250/src/SemiEmpirical/SemiEmpiricalDlg.c.strlen GabeditSrc250/src/SemiEmpirical/SemiEmpiricalDlg.c
--- GabeditSrc250/src/SemiEmpirical/SemiEmpiricalDlg.c.strlen 2017-07-10 13:52:53.000000000 +0200
+++ GabeditSrc250/src/SemiEmpirical/SemiEmpiricalDlg.c 2017-07-12 00:13:34.303930663 +0200
@@ -1328,6 +1328,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
@@ -4493,7 +4494,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);
@@ -4511,7 +4513,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);
@@ -4523,7 +4526,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);
@@ -4825,10 +4829,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);
@@ -4838,7 +4843,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);