]> granicus.if.org Git - postgresql/commitdiff
Fix some memory leaks.
authorHiroshi Inoue <inoue@tpf.co.jp>
Wed, 14 Mar 2001 09:10:04 +0000 (09:10 +0000)
committerHiroshi Inoue <inoue@tpf.co.jp>
Wed, 14 Mar 2001 09:10:04 +0000 (09:10 +0000)
src/interfaces/odbc/environ.c
src/interfaces/odbc/socket.c

index 6099ba4d1004758679110c319343b2155b37768c..fb8ed6869ae7b287bce241ff5681fe22fc2924e9 100644 (file)
@@ -425,6 +425,7 @@ char rv = 1;
                if (conns[lf] && conns[lf]->henv == self)
                        rv = rv && CC_Destructor(conns[lf]);
        }
+       free(self);
 
        mylog("exit EN_Destructor: rv = %d\n", rv);
        return rv;
index 6b551792fe12f89fec2cfca6d696e54ac0349731..555f9bff4cc2d54040e55838306e9fa11289edf1 100644 (file)
@@ -58,11 +58,18 @@ SocketClass *rv;
 
                rv->buffer_in = (unsigned char *) malloc(globals.socket_buffersize);
                if ( ! rv->buffer_in)
+               {
+                       free(rv);
                        return NULL;
+               }
 
                rv->buffer_out = (unsigned char *) malloc(globals.socket_buffersize);
                if ( ! rv->buffer_out)
+               {
+                       free(rv->buffer_in);
+                       free(rv);
                        return NULL;
+               }
                
         rv->errormsg = NULL;
         rv->errornumber = 0;