diff options
author | tron <tron> | 2000-11-23 22:05:44 +0000 |
---|---|---|
committer | tron <tron> | 2000-11-23 22:05:44 +0000 |
commit | 0a2be361bba9a9dc500c0322f47a01d030b1587b (patch) | |
tree | e6e4eff26951b7ba9d0e8e21eb4dd9bcdf7e59a4 | |
parent | 1d1add196e0f6349ae6412cec19adccc79f0a3d8 (diff) | |
download | pkgsrc-0a2be361bba9a9dc500c0322f47a01d030b1587b.tar.gz |
Avoid segmentation fault if "~/.ee/settings" cannot be opened for write.
Fixes PR pkg/11554 by Charles M. Hannum.
-rw-r--r-- | graphics/ee/files/patch-sum | 4 | ||||
-rw-r--r-- | graphics/ee/patches/patch-aa | 18 |
2 files changed, 16 insertions, 6 deletions
diff --git a/graphics/ee/files/patch-sum b/graphics/ee/files/patch-sum index c4561b04d38..06850fa11e5 100644 --- a/graphics/ee/files/patch-sum +++ b/graphics/ee/files/patch-sum @@ -1,4 +1,4 @@ -$NetBSD: patch-sum,v 1.4 2000/11/23 18:28:54 mycroft Exp $ +$NetBSD: patch-sum,v 1.5 2000/11/23 22:05:44 tron Exp $ -MD5 (patch-aa) = af0345d48d23ef7f7a6c7ec08ac59cab +MD5 (patch-aa) = 08ac039dcd6974d52a14f3b3b45ad5af MD5 (patch-ab) = 8c5a00324ba6f3ff7d7a310738353ef1 diff --git a/graphics/ee/patches/patch-aa b/graphics/ee/patches/patch-aa index 8b7eeed9441..b7a351ef63f 100644 --- a/graphics/ee/patches/patch-aa +++ b/graphics/ee/patches/patch-aa @@ -1,7 +1,7 @@ -$NetBSD: patch-aa,v 1.3 2000/11/23 18:28:54 mycroft Exp $ +$NetBSD: patch-aa,v 1.4 2000/11/23 22:05:44 tron Exp $ ---- ee_conf.c.orig Wed Mar 31 12:15:14 1999 -+++ ee_conf.c Wed Mar 31 12:22:10 1999 +--- ee_conf.c.orig Wed Feb 10 15:38:55 1999 ++++ ee_conf.c Thu Nov 23 23:02:06 2000 @@ -10,6 +10,9 @@ #include <ee_image.h> #include <stdio.h> @@ -12,7 +12,7 @@ $NetBSD: patch-aa,v 1.3 2000/11/23 18:28:54 mycroft Exp $ #include "globals.h" #include "functions.h" -@@ -25,10 +28,16 @@ +@@ -25,13 +28,26 @@ gchar *hom; gchar *s; FILE *f; @@ -26,6 +26,16 @@ $NetBSD: patch-aa,v 1.3 2000/11/23 18:28:54 mycroft Exp $ + i = stat(s, &sb); + if (i == -1 && errno == ENOENT) + mkdir(s, S_IRWXU); ++ g_free(s); s = g_strconcat(hom, "/.ee/settings", NULL); g_free(hom); f = fopen(s, "w"); ++ if (!f) ++ { ++ g_free(s); ++ return; ++ } ++ + g_free(s); + scrolled_view = GPOINTER_TO_INT + (gtk_object_get_data(GTK_OBJECT(image_display), "forcescroll")); |