Makefile.am         |    3 ++-
 VERSION             |    2 +-
 config/Makefile.am  |    6 ++++++
 config/config       |   16 ++++++++++++++++
 configure.ac        |    1 +
 metadata/global.xml |    1 +
 src/compiz.c        |   14 ++++++++++++--
 src/ini.c           |   19 +++++++++++++++++++
 src/iniparser.c     |    6 +++---
 src/main.c          |    5 ++++-
 10 files changed, 65 insertions(+), 8 deletions(-)

New commits:
commit bc9b09f3c5d1e1667e13b32afa1a12f4cef872a0
Author: Guillaume Seguin <[EMAIL PROTECTED]>
Date:   Sat Oct 20 22:00:44 2007 +0200

    * Bump VERSION to 0.6.1

diff --git a/VERSION b/VERSION
index de3b1c2..161c807 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-VERSION=0.6.0
+VERSION=0.6.1

commit 5615cac87c48455128cc42f6144bfa3493cb1dd9
Author: Jigish Gohil <[EMAIL PROTECTED](none)>
Date:   Wed Oct 3 13:29:52 2007 +0530

    bump version to 0.6.0

diff --git a/VERSION b/VERSION
index 2313ac4..de3b1c2 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-VERSION=0.5.2
+VERSION=0.6.0

commit 6ab37f581c1322d5a64e97baaaae063e5608e081
Author: Danny Baumann <[EMAIL PROTECTED]>
Date:   Mon Sep 17 19:06:43 2007 +0200

    Prevent binding key combinations with invalid key names.
    XStringToKeysym fails for those, leading to the unwanted effect that the 
binding was grabbed as modifier-only binding.

diff --git a/src/compiz.c b/src/compiz.c
index b71e015..fcb0702 100644
--- a/src/compiz.c
+++ b/src/compiz.c
@@ -607,7 +607,14 @@ stringToKey (const char *binding, int *keysym, unsigned 
int *mods)
     while (*binding && !isalnum (*binding))
        binding++;
 
-    *keysym = XStringToKeysym (binding);
+    if (*binding)
+    {
+       *keysym = XStringToKeysym (binding);
+       if (!*keysym)
+           *mods = 0;
+    }
+    else
+       *keysym = NoSymbol;
 }
 
 

commit 9c6ad85017253a9415f02b532a2107e19a0af1cb
Author: Dennis Kasprzyk <[EMAIL PROTECTED]>
Date:   Sun Sep 2 22:22:18 2007 +0200

    Allow empty lists.

diff --git a/src/ini.c b/src/ini.c
index 1ae59a3..ea25362 100644
--- a/src/ini.c
+++ b/src/ini.c
@@ -352,6 +352,19 @@ ccsIniGetAction (IniDictionary         *dictionary,
        return FALSE;
 }
 
+static Bool
+isEmptyString (char *value)
+{
+    int i = 0;
+
+    for (i = 0; i < strlen(value); i++)
+    {
+       if (!isblank(value[i]))
+           return FALSE;
+    }
+    return TRUE;
+}
+
 Bool
 ccsIniGetList (IniDictionary       *dictionary,
               const char          *section,
@@ -368,6 +381,12 @@ ccsIniGetList (IniDictionary       *dictionary,
     if (!valString)
        return FALSE;
 
+    if (strlen(valString) == 0 || isEmptyString(valString))
+    {
+       *value = NULL;
+       return TRUE;
+    }
+
     valueString = strdup (valString);
     valueStart = valueString;
 

commit c699e529dc456d415709f3eb5007de9515cf14b0
Author: Danny Baumann <[EMAIL PROTECTED]>
Date:   Sun Sep 2 13:52:28 2007 +0200

    Make wobbly provide the feature "edgeresistance".

diff --git a/metadata/global.xml b/metadata/global.xml
index ef81454..73a408b 100644
--- a/metadata/global.xml
+++ b/metadata/global.xml
@@ -260,6 +260,7 @@
        <!-- wobbly metadata -->
        <plugin name="wobbly">
                <category>Effects</category>
+               <feature>edgeresistance</feature>
        </plugin>
        <!-- zoom metadata -->
        <plugin name="zoom">

commit 52dba67492c3ae322e709c4dd11c3052f9514ac4
Author: Roland Bär <[EMAIL PROTECTED](none)>
Date:   Fri Aug 31 12:29:30 2007 +0200

    Plug minor memleak.

diff --git a/src/compiz.c b/src/compiz.c
index b5c8c19..b71e015 100644
--- a/src/compiz.c
+++ b/src/compiz.c
@@ -295,7 +295,10 @@ getNodesFromPath (xmlDoc * doc, xmlNode * base, char 
*path, int *num)
        char *bPath = getGenericNodePath (base);
 
        if (!bPath)
+       {
+           free (rv);
            return NULL;
+       }
 
        asprintf (&gPath, "%s/%s", bPath, path);
        if (gPath)

commit 1f56a23dd771dd438dd833fab65f3a662a13dc37
Author: Dennis Kasprzyk <[EMAIL PROTECTED]>
Date:   Thu Aug 30 01:20:24 2007 +0200

    Do not create dir/file during import.
    Save settings after import.

diff --git a/src/main.c b/src/main.c
index c275a2d..77d94fb 100644
--- a/src/main.c
+++ b/src/main.c
@@ -36,6 +36,7 @@
 #include <ccs.h>
 
 #include "ccs-private.h"
+#include "iniparser.h"
 
 Bool basicMetadata = FALSE;
 
@@ -2468,7 +2469,7 @@ ccsImportFromFile (CCSContext * context, const char * 
fileName, Bool overwrite)
     CCSSetting *setting;
     char *keyName;
 
-    importFile = ccsIniOpen (fileName);
+    importFile = iniparser_new ((char *) fileName);
     if (!importFile)
        return FALSE;
 
@@ -2566,6 +2567,8 @@ ccsImportFromFile (CCSContext * context, const char * 
fileName, Bool overwrite)
        }
     }
 
+    ccsWriteSettings (context);
+
     ccsIniClose (importFile);
 
     return TRUE;

commit b05ff08bc9f2bc42e7e483af6ca9d2a3718b0211
Author: Danny Baumann <[EMAIL PROTECTED]>
Date:   Fri Aug 24 15:03:28 2007 +0200

    Another attempt at properly fixing file locking.

diff --git a/src/iniparser.c b/src/iniparser.c
index 359a0fd..35b526b 100644
--- a/src/iniparser.c
+++ b/src/iniparser.c
@@ -56,7 +56,7 @@ ini_file_lock (const char *fileName, Bool exclusive)
     struct flock lockinfo;
 
     if (exclusive)
-       fd = open (fileName, O_WRONLY | O_CREAT, 0666);
+       fd = open (fileName, O_WRONLY | O_CREAT | O_TRUNC, 0666);
     else
        fd = open (fileName, O_RDONLY | O_CREAT, 0666);
     if (fd < 0)
@@ -689,6 +689,7 @@ iniparser_dump_ini (dictionary * d, const char * file_name)
            fprintf (f, "%s = %s\n", d->key[i], d->val[i]);
        }
 
+       fflush (f);
        ini_file_unlock (lock);
        return;
     }
@@ -716,6 +717,7 @@ iniparser_dump_ini (dictionary * d, const char * file_name)
        fprintf (f, "\n");
     }
 
+    fflush (f);
     ini_file_unlock (lock );
 }
 

commit 3d8b161d513f5ce9b6564251f7dd27b1abe3eee7
Author: Roland Baer <[EMAIL PROTECTED](none)>
Date:   Tue Aug 21 15:21:11 2007 +0300

    [PATCH] Sanitised return value(s) of getNodesFromXPath().
    
    If we return NULL, then *num should also be 0.
    Mostly not directly the return value get checked, it
    checks only num. At this rare path num is !=0 but it returns
    NULL....

diff --git a/src/compiz.c b/src/compiz.c
index 80d6c01..b5c8c19 100644
--- a/src/compiz.c
+++ b/src/compiz.c
@@ -241,7 +241,6 @@ getNodesFromXPath (xmlDoc * doc, xmlNode * base, char 
*path, int *num)
        return NULL;
     }
 
-    *num = size;
     rv = malloc (size * sizeof (xmlNode *));
     if (!rv)
     {
@@ -249,6 +248,7 @@ getNodesFromXPath (xmlDoc * doc, xmlNode * base, char 
*path, int *num)
        xmlXPathFreeContext (xpathCtx);
        return NULL;
     }
+    *num = size;
 
     for (i = 0; i < size; i++)
        rv[i] = xpathObj->nodesetval->nodeTab[i];

commit 8dfe40b5f7dda340272f65ee00645eaaa5fcf680
Author: Danny Baumann <[EMAIL PROTECTED]>
Date:   Thu Aug 23 09:03:33 2007 +0200

    Fix ini file corruption.

diff --git a/src/iniparser.c b/src/iniparser.c
index 0d01ca5..359a0fd 100644
--- a/src/iniparser.c
+++ b/src/iniparser.c
@@ -689,7 +689,6 @@ iniparser_dump_ini (dictionary * d, const char * file_name)
            fprintf (f, "%s = %s\n", d->key[i], d->val[i]);
        }
 
-       fclose (f);
        ini_file_unlock (lock);
        return;
     }
@@ -717,7 +716,6 @@ iniparser_dump_ini (dictionary * d, const char * file_name)
        fprintf (f, "\n");
     }
 
-    fclose (f);
     ini_file_unlock (lock );
 }
 

commit 3bd0c4b4957904fc76bc38eae0c94980e06faa96
Author: Dennis Kasprzyk <[EMAIL PROTECTED]>
Date:   Tue Aug 14 18:48:52 2007 +0200

    Install default global config file.

diff --git a/Makefile.am b/Makefile.am
index 699c5ff..5e3e7d8 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -6,7 +6,8 @@ ALL_SUBDIRS =    \
     src                 \
     backend      \
     plugin       \
-    metadata
+    metadata    \
+    config
 
 SUBDIRS = $(ALL_SUBDIRS)
 
diff --git a/config/Makefile.am b/config/Makefile.am
new file mode 100644
index 0000000..e89f2d5
--- /dev/null
+++ b/config/Makefile.am
@@ -0,0 +1,6 @@
+globalconfigdir = $(sysconfdir)/compizconfig
+globalconfig_DATA =           \
+       config
+
+EXTRA_DIST =          \
+       config
\ No newline at end of file
diff --git a/config/config b/config/config
new file mode 100644
index 0000000..21842ed
--- /dev/null
+++ b/config/config
@@ -0,0 +1,16 @@
+[kde_session]
+backend = kconfig
+integration = true
+plugin_list_autosort = true
+
+[gnome_session]
+backend = gconf
+integration = true
+plugin_list_autosort = true
+
+[general]
+backend = ini
+plugin_list_autosort = true
+
+
+
diff --git a/configure.ac b/configure.ac
index 77231d8..71d11bd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -119,6 +119,7 @@ plugin/Makefile
 include/Makefile
 metadata/Makefile
 po/Makefile.in
+config/Makefile
 ])
 
 AC_OUTPUT


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to