summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Udaltsov <svu@gnome.org>2005-12-03 13:31:58 +0000
committerSergey Udaltsov <svu@gnome.org>2005-12-03 13:31:58 +0000
commit4c6a68d404a397fae2fd600667072cae8ab71bbb (patch)
tree7f408ffed28f734b2c1abded72cd2e67273ddce0
parent9b35af3f4b38ad32016344d2a9815af6bf701b42 (diff)
downloadlibxklavier-4c6a68d404a397fae2fd600667072cae8ab71bbb.tar.gz
wait -> waitpid, closed http://bugzilla.gnome.org/show_bug.cgi?id=322955
-rw-r--r--ChangeLog10
-rw-r--r--libxklavier/xklavier_config_xkb.c22
2 files changed, 25 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 2fb61d8..29d1d96 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2005-12-03 svu
+
+ * libxklavier/xklavier_config_xkb.c:
+ wait -> waitpid, fixed http://bugzilla.gnome.org/show_bug.cgi?id=322955
+
+2005-09-22 svu
+
+ * libxklavier/xklavier_config_xkb.c:
+ don't remove tmp files on debug level >= 500
+
2005-05-29 svu
* libxklavier/xklavier.c,
diff --git a/libxklavier/xklavier_config_xkb.c b/libxklavier/xklavier_config_xkb.c
index e102137..d19106b 100644
--- a/libxklavier/xklavier_config_xkb.c
+++ b/libxklavier/xklavier_config_xkb.c
@@ -225,7 +225,7 @@ static XkbDescPtr _XklConfigGetKeyboard( XkbComponentNamesPtr componentNamesPtr,
exit( 1 );
default:
/* parent */
- pid = wait( &status );
+ pid = waitpid( cpid, &status, 0 );
XklDebug( 150, "Return status of %d (well, started %d): %d\n", pid, cpid, status );
memset( (char *)&result, 0, sizeof(result) );
result.xkb = XkbAllocKeyboard();
@@ -261,9 +261,13 @@ static XkbDescPtr _XklConfigGetKeyboard( XkbComponentNamesPtr componentNamesPtr,
}
fclose( tmpxkm );
XklDebug( 160, "Unlinking the temporary xkm file %s\n", xkmFN );
- if ( remove( xkmFN ) == -1 )
- XklDebug( 0, "Could not unlink the temporary xkm file %s: %d\n",
- xkmFN, errno );
+ if ( _xklDebugLevel < 500 ) /* don't remove on high debug levels! */
+ {
+ if ( remove( xkmFN ) == -1 )
+ XklDebug( 0, "Could not unlink the temporary xkm file %s: %d\n",
+ xkmFN, errno );
+ } else
+ XklDebug( 500, "Well, not really - the debug level is too high: %d\n", _xklDebugLevel );
} else /* could not open the file */
{
XklDebug( 0, "Could not open the temporary xkm file %s\n", xkmFN );
@@ -277,9 +281,13 @@ static XkbDescPtr _XklConfigGetKeyboard( XkbComponentNamesPtr componentNamesPtr,
break;
}
XklDebug( 160, "Unlinking the temporary xkb file %s\n", xkbFN );
- if ( remove( xkbFN ) == -1 )
- XklDebug( 0, "Could not unlink the temporary xkb file %s: %d\n",
- xkbFN, errno );
+ if ( _xklDebugLevel < 500 ) /* don't remove on high debug levels! */
+ {
+ if ( remove( xkbFN ) == -1 )
+ XklDebug( 0, "Could not unlink the temporary xkb file %s: %d\n",
+ xkbFN, errno );
+ } else
+ XklDebug( 500, "Well, not really - the debug level is too high: %d\n", _xklDebugLevel );
} else /* could not open input tmp file */
{
XklDebug( 0, "Could not open tmp XKB file [%s]: %d\n", xkbFN, errno );