Repository: trafficserver
Updated Branches:
  refs/heads/master ea9153ed4 -> 5747dc19c


TS-3280: Segfault in new freelist bulk freeing


Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/9f3bf918
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/9f3bf918
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/9f3bf918

Branch: refs/heads/master
Commit: 9f3bf9186d6daa7543ee167988e6c9bb177ff284
Parents: ea9153e
Author: Brian Geffon <[email protected]>
Authored: Fri Jan 9 15:08:57 2015 -0800
Committer: Brian Geffon <[email protected]>
Committed: Fri Jan 9 15:08:57 2015 -0800

----------------------------------------------------------------------
 lib/ts/ink_queue.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafficserver/blob/9f3bf918/lib/ts/ink_queue.cc
----------------------------------------------------------------------
diff --git a/lib/ts/ink_queue.cc b/lib/ts/ink_queue.cc
index 9bb5430..49207a9 100644
--- a/lib/ts/ink_queue.cc
+++ b/lib/ts/ink_queue.cc
@@ -316,7 +316,8 @@ ink_freelist_free_bulk(InkFreeList *f, void *head, void 
*tail, size_t num_item)
     for (size_t i = 0; i<num_item; i++) {
       for (int j = sizeof(void*); j < (int)f->type_size; j++)
         ((char*)temp)[j] = str[j % 4];
-      temp = *ADDRESS_OF_NEXT(temp, 0);
+      *ADDRESS_OF_NEXT(temp, 0) = FROM_PTR(*ADDRESS_OF_NEXT(temp,0));
+      temp = TO_PTR(*ADDRESS_OF_NEXT(temp, 0));
     }
   }
 #endif /* DEADBEEF */

Reply via email to