Skip to content

Instantly share code, notes, and snippets.

@sergej
sergej / sm.c.diff
Created October 13, 2013 08:55
Fix sm crash on HUP signal
diff --git a/sm/sm.c b/sm/sm.c
index d48541e..2dcf25e 100644
--- a/sm/sm.c
+++ b/sm/sm.c
@@ -329,7 +329,7 @@ int sm_register_ns(sm_t sm, const char *uri) {
ns_idx = xhash_count(sm->xmlns) + 2;
xhash_put(sm->xmlns, pstrdup(xhash_pool(sm->xmlns), uri), (void *) (long) ns_idx);
}
- xhash_put(sm->xmlns_refcount, uri, (void *) ((long) xhash_get(sm->xmlns_refcount, uri) + 1));
+ xhash_put(sm->xmlns_refcount, pstrdup(xhash_pool(sm->xmlns_refcount), uri), (void *) ((long) xhash_get(sm->xmlns_refcount, uri) + 1));