summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrandomguy3 <randomguy3@7c02a99a-9b00-45e3-bf44-6f3dd7fddb64>2012-03-08 17:36:48 +0000
committerrandomguy3 <randomguy3@7c02a99a-9b00-45e3-bf44-6f3dd7fddb64>2012-03-08 17:36:48 +0000
commitd26e56e2fd57da2dadddf760b2984956f7daa069 (patch)
tree279ce688dc97b4a261e8c24af106e26b33b60a25
parent2ce4b8a878459ed8c4b9f3077b9c8f924c2a04e4 (diff)
GTK: fix creating the user support dir
git-svn-id: https://tikzit.svn.sourceforge.net/svnroot/tikzit/trunk@418 7c02a99a-9b00-45e3-bf44-6f3dd7fddb64
-rw-r--r--tikzit/src/common/SupportDir.m3
-rw-r--r--tikzit/src/gtk/MainWindow.m4
-rw-r--r--tikzit/src/gtk/mkdtemp.m26
-rw-r--r--tikzit/src/gtk/stat.h25
4 files changed, 31 insertions, 27 deletions
diff --git a/tikzit/src/common/SupportDir.m b/tikzit/src/common/SupportDir.m
index f0392b1..22fed1b 100644
--- a/tikzit/src/common/SupportDir.m
+++ b/tikzit/src/common/SupportDir.m
@@ -25,6 +25,7 @@
#ifndef __APPLE__
#import <glib.h>
+#import "stat.h"
#endif
@implementation SupportDir
@@ -55,7 +56,7 @@
error:NULL];
#else
// NSFileManager is slightly dodgy on Windows
- g_mkdir_with_parents ([[SupportDir userSupportDir] UTF8String], 700);
+ g_mkdir_with_parents ([[SupportDir userSupportDir] UTF8String], S_IRUSR | S_IWUSR | S_IXUSR);
#endif
}
diff --git a/tikzit/src/gtk/MainWindow.m b/tikzit/src/gtk/MainWindow.m
index c391ea5..6506125 100644
--- a/tikzit/src/gtk/MainWindow.m
+++ b/tikzit/src/gtk/MainWindow.m
@@ -45,6 +45,8 @@
#import "TikzDocument.h"
#import "WidgetSurface.h"
+#import "stat.h"
+
// {{{ Internal interfaces
// {{{ Clipboard support
@@ -462,7 +464,7 @@ static void update_paste_action (GtkClipboard *clipboard, GdkEvent *event, GtkAc
if (preambles != nil) {
NSString *preamblesDir = [[SupportDir userSupportDir] stringByAppendingPathComponent:@"preambles"];
// NSFileManager is slightly dodgy on Windows
- g_mkdir_with_parents ([preamblesDir UTF8String], 700);
+ g_mkdir_with_parents ([preamblesDir UTF8String], S_IRUSR | S_IWUSR | S_IXUSR);
[preambles storeToDirectory:preamblesDir];
[configFile setStringEntry:@"selectedPreamble" inGroup:@"Preambles" value:[preambles selectedPreambleName]];
}
diff --git a/tikzit/src/gtk/mkdtemp.m b/tikzit/src/gtk/mkdtemp.m
index 0866e54..f6b73aa 100644
--- a/tikzit/src/gtk/mkdtemp.m
+++ b/tikzit/src/gtk/mkdtemp.m
@@ -60,31 +60,7 @@
# endif
#endif
-#include <sys/stat.h>
-#if STAT_MACROS_BROKEN
-# undef S_ISDIR
-#endif
-#if !defined S_ISDIR && defined S_IFDIR
-# define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR)
-#endif
-#if !S_IRUSR && S_IREAD
-# define S_IRUSR S_IREAD
-#endif
-#if !S_IRUSR
-# define S_IRUSR 00400
-#endif
-#if !S_IWUSR && S_IWRITE
-# define S_IWUSR S_IWRITE
-#endif
-#if !S_IWUSR
-# define S_IWUSR 00200
-#endif
-#if !S_IXUSR && S_IEXEC
-# define S_IXUSR S_IEXEC
-#endif
-#if !S_IXUSR
-# define S_IXUSR 00100
-#endif
+#include "stat.h"
#ifdef __MINGW32__
/* mingw's mkdir() function has 1 argument, but we pass 2 arguments.
diff --git a/tikzit/src/gtk/stat.h b/tikzit/src/gtk/stat.h
new file mode 100644
index 0000000..a9829ae
--- /dev/null
+++ b/tikzit/src/gtk/stat.h
@@ -0,0 +1,25 @@
+#include <sys/stat.h>
+#if STAT_MACROS_BROKEN
+# undef S_ISDIR
+#endif
+#if !defined S_ISDIR && defined S_IFDIR
+# define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR)
+#endif
+#if !S_IRUSR && S_IREAD
+# define S_IRUSR S_IREAD
+#endif
+#if !S_IRUSR
+# define S_IRUSR 00400
+#endif
+#if !S_IWUSR && S_IWRITE
+# define S_IWUSR S_IWRITE
+#endif
+#if !S_IWUSR
+# define S_IWUSR 00200
+#endif
+#if !S_IXUSR && S_IEXEC
+# define S_IXUSR S_IEXEC
+#endif
+#if !S_IXUSR
+# define S_IXUSR 00100
+#endif