Merge branch 'master' of ssh://git.indexdata.com/home/git/pub/pazpar2
authorAdam Dickmeiss <adam@indexdata.dk>
Mon, 19 Apr 2010 10:59:31 +0000 (12:59 +0200)
committerAdam Dickmeiss <adam@indexdata.dk>
Mon, 19 Apr 2010 10:59:31 +0000 (12:59 +0200)
src/client.c
src/connection.c

index 6f0941a..91d0b26 100644 (file)
@@ -617,15 +617,16 @@ struct client *client_create(void)
 void client_incref(struct client *c)
 {
     pazpar2_incref(&c->ref_count, c->mutex);
-    yaz_log(YLOG_DEBUG, "client_incref %s %d", client_get_url(c), c->ref_count);
+    yaz_log(YLOG_LOG, "client_incref c=%p %s cnt=%d",
+            c, client_get_url(c), c->ref_count);
 }
 
 int client_destroy(struct client *c)
 {
     if (c)
     {
-        yaz_log(YLOG_DEBUG, "client_destroy %s %d",
-                client_get_url(c), c->ref_count);
+        yaz_log(YLOG_LOG, "client_destroy c=%p %s cnt=%d",
+                c, client_get_url(c), c->ref_count);
         if (!pazpar2_decref(&c->ref_count, c->mutex))
         {
             c->next = 0;
@@ -813,7 +814,6 @@ int client_parse_query(struct client *cl, const char *query)
 void client_remove_from_session(struct client *c)
 {
     struct session *se;
-    client_incref(c);
 
     se = c->session;
     assert(se);
@@ -830,7 +830,6 @@ void client_remove_from_session(struct client *c)
         c->session = 0;
         c->next = 0;
     }
-    client_destroy(c);
 }
 
 void client_set_session(struct client *cl, struct session *se)
index 260196c..e765435 100644 (file)
@@ -173,7 +173,6 @@ static void non_block_events(struct connection *co)
             continue;
         ev = ZOOM_connection_last_event(link);
         
-        client_incref(cl);
 #if 0
         yaz_log(YLOG_LOG, "ZOOM_EVENT_%s", ZOOM_get_event_str(ev));
 #endif
@@ -220,16 +219,13 @@ static void non_block_events(struct connection *co)
             yaz_log(YLOG_LOG, "Unhandled event (%d) from %s",
                     ev, client_get_url(cl));
         }
-        client_destroy(cl);
     }
     if (got_records)
     {
         struct client *cl = co->client;
         if (cl)
         {
-            client_incref(cl); 
             client_got_records(cl);
-            client_destroy(cl);
         }
     }
 }