summaryrefslogtreecommitdiffstats
path: root/redhat/qt3/qt-x11-free-3.3.7-umask.patch
diff options
context:
space:
mode:
Diffstat (limited to 'redhat/qt3/qt-x11-free-3.3.7-umask.patch')
-rw-r--r--redhat/qt3/qt-x11-free-3.3.7-umask.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/redhat/qt3/qt-x11-free-3.3.7-umask.patch b/redhat/qt3/qt-x11-free-3.3.7-umask.patch
new file mode 100644
index 000000000..f2351909f
--- /dev/null
+++ b/redhat/qt3/qt-x11-free-3.3.7-umask.patch
@@ -0,0 +1,14 @@
+--- qt-x11-free-3.3.7/src/tools/qsettings.cpp.tn 2006-11-09 20:53:25.000000000 +0100
++++ qt-x11-free-3.3.7/src/tools/qsettings.cpp 2006-11-09 20:59:53.000000000 +0100
+@@ -994,7 +994,10 @@
+ #endif
+
+ QFile file( filename + ".tmp" );
+- if (! file.open(IO_WriteOnly)) {
++ mode_t old_umask = umask(0022);
++ bool f = file.open(IO_WriteOnly);
++ umask(old_umask);
++ if (! f) {
+
+ #ifdef QT_CHECK_STATE
+ qWarning("QSettings::sync: failed to open '%s' for writing",