[glide] Some better handling of temporary directory creation for extraction...fixes themes extracting in to
- From: Robert Carr <racarr src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glide] Some better handling of temporary directory creation for extraction...fixes themes extracting in to
- Date: Sat, 5 Jun 2010 19:51:00 +0000 (UTC)
commit d29d3acfe2184fafc57e3be9e39842cf2499adca
Author: Robert Carr <racarr Valentine localdomain>
Date: Sat Jun 5 15:38:46 2010 -0400
Some better handling of temporary directory creation for extraction...fixes themes extracting in to same dir...whoops
libglide/glide-dirs.c | 10 ++++++++++
libglide/glide-dirs.h | 3 +++
libglide/glide-theme.c | 5 +++--
3 files changed, 16 insertions(+), 2 deletions(-)
---
diff --git a/libglide/glide-dirs.c b/libglide/glide-dirs.c
index 877b711..5841ce0 100644
--- a/libglide/glide-dirs.c
+++ b/libglide/glide-dirs.c
@@ -22,6 +22,7 @@
*/
#include "glide-dirs.h"
+#include <stdio.h>
gchar *
glide_dirs_get_glide_data_dir (void)
@@ -60,3 +61,12 @@ glide_dirs_get_glide_theme_dir ()
g_free (datadir);
return themedir;
}
+
+gchar *
+glide_dirs_make_temp_dir ()
+{
+ const gchar *temp_dir = g_get_tmp_dir();
+ gchar *template = g_strdup_printf ("%s/glide-XXXXXX", temp_dir);
+
+ return mkdtemp (template);
+}
diff --git a/libglide/glide-dirs.h b/libglide/glide-dirs.h
index 9bc017e..29a7f41 100644
--- a/libglide/glide-dirs.h
+++ b/libglide/glide-dirs.h
@@ -34,4 +34,7 @@ glide_dirs_get_glide_ui_dir (void);
gchar *
glide_dirs_get_glide_theme_dir (void);
+gchar *
+glide_dirs_make_temp_dir (void);
+
#endif
diff --git a/libglide/glide-theme.c b/libglide/glide-theme.c
index 9d98f68..5f06cb3 100644
--- a/libglide/glide-theme.c
+++ b/libglide/glide-theme.c
@@ -33,6 +33,8 @@
#include "glide-json-util.h"
#include "glide-debug.h"
+#include "glide-dirs.h"
+
G_DEFINE_TYPE(GlideTheme, glide_theme, G_TYPE_OBJECT)
@@ -240,8 +242,7 @@ static void
glide_theme_make_working_dir (GlideTheme *d)
{
gchar *wdir;
- wdir = g_strdup_printf("%s/glide-theme-%ld", g_get_tmp_dir(), time(NULL));
- g_mkdir(wdir, 0700);
+ wdir = glide_dirs_make_temp_dir ();
if (d->priv->working_path)
g_free (d->priv->working_path);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]