diff options
author | Ted Gould <ted@gould.cx> | 2010-02-04 19:30:15 -0800 |
---|---|---|
committer | Ted Gould <ted@gould.cx> | 2010-02-04 19:30:15 -0800 |
commit | 8453c34c99dea3ab0742bfb87045b880a723c4f9 (patch) | |
tree | 699c85962c68bca0edd7c8e63d3973d220d4f9a8 | |
parent | 4a1e9ef344e3adf27769e9a051b2748e1fc1e12a (diff) | |
download | libdbusmenu-8453c34c99dea3ab0742bfb87045b880a723c4f9.tar.gz libdbusmenu-8453c34c99dea3ab0742bfb87045b880a723c4f9.tar.bz2 libdbusmenu-8453c34c99dea3ab0742bfb87045b880a723c4f9.zip |
Setting the initial id to -1 and then if so, and we get it, find us a good one.
-rw-r--r-- | libdbusmenu-glib/menuitem.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libdbusmenu-glib/menuitem.c b/libdbusmenu-glib/menuitem.c index 14bc2db..6739257 100644 --- a/libdbusmenu-glib/menuitem.c +++ b/libdbusmenu-glib/menuitem.c @@ -270,7 +270,7 @@ dbusmenu_menuitem_init (DbusmenuMenuitem *self) { DbusmenuMenuitemPrivate * priv = DBUSMENU_MENUITEM_GET_PRIVATE(self); - priv->id = 0; + priv->id = -1; priv->children = NULL; priv->properties = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, _g_value_free); @@ -335,6 +335,9 @@ get_property (GObject * obj, guint id, GValue * value, GParamSpec * pspec) switch (id) { case PROP_ID: + if (priv->id == -1) { + priv->id = menuitem_next_id++; + } g_value_set_int(value, priv->id); break; } |