Don't free connection on error, just close it.
authorLinus Nordberg <linus@nordu.net>
Sun, 13 Mar 2011 23:22:41 +0000 (00:22 +0100)
committerLinus Nordberg <linus@nordu.net>
Sun, 13 Mar 2011 23:22:41 +0000 (00:22 +0100)
lib/conn.c

index f85eec6..58290f5 100644 (file)
 int
 conn_close (struct rs_connection **connp)
 {
-  int r;
+  int r = 0;
   assert (connp);
   assert (*connp);
-  r = rs_conn_destroy (*connp);
-  if (!r)
+  if ((*connp)->is_connected)
+    r = rs_conn_disconnect (*connp);
+  if (r == RSE_OK)
     *connp = NULL;
   return r;
 }