tt/mini_isam: Coverity (memory corruption, moderate)
authorJon Trulson <jon@radscan.com>
Fri, 26 Dec 2014 23:15:53 +0000 (16:15 -0700)
committerJon Trulson <jon@radscan.com>
Fri, 26 Dec 2014 23:15:53 +0000 (16:15 -0700)
cde/lib/tt/mini_isam/isrewcurr.c

index a7cd17787c6f3657d3b0ebcde44a896fd5ef91d2..abb50ff3970b67961ea575fd5d3cb6fa71bc0c67 100644 (file)
@@ -203,14 +203,16 @@ _amrewcurr(isfhandle, record, reclen, curpos, recnum, errcode)
        _amseterrcode(errcode, err);    
        goto ERROR;
     }
-    _bytearr_free(curpos);
-    *curpos = newcurpos;
 
     /* 
      * This takes care of new record position if the physical order is in use.
      */
     *recnum = crp->recno;      
     
+    _bytearr_free(curpos);
+    crp = NULL;                 /* was aliased to freed curpos->data */
+    *curpos = newcurpos;
+
     _amseterrcode(errcode, ISOK);
     _issignals_mask();
     _isdisk_commit();