[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[sc-dev] SF.net SVN: supercollider:[8120] trunk



Revision: 8120
          http://supercollider.svn.sourceforge.net/supercollider/?rev=8120&view=rev
Author:   danstowell
Date:     2008-12-13 17:17:42 +0000 (Sat, 13 Dec 2008)

Log Message:
-----------
SC_AllocPool fix: ChunkAtOffset takes signed long argument, rather than size_t, since it is supposed to be usable with negative offsets

Modified Paths:
--------------
    trunk/Headers/common/SC_AllocPool.h
    trunk/Source/common/SC_AllocPool.cpp

Modified: trunk/Headers/common/SC_AllocPool.h
===================================================================
--- trunk/Headers/common/SC_AllocPool.h	2008-12-13 17:14:07 UTC (rev 8119)
+++ trunk/Headers/common/SC_AllocPool.h	2008-12-13 17:17:42 UTC (rev 8120)
@@ -64,14 +64,14 @@
 	size_t PrevSize() 
 		{ return mPrevSize & kSizeBits; }
 		
-	AllocChunkPtr ChunkAtOffset(size_t inSize) 
+	AllocChunkPtr ChunkAtOffset(signed long inSize) 
 		{ return AllocChunkPtr((char*)this + inSize); }
 		
 	AllocChunkPtr NextChunk() 
 		{ return ChunkAtOffset(Size()); }
 		
 	AllocChunkPtr PrevChunk() 
-		{ return ChunkAtOffset(-PrevSize()); }
+		{ return ChunkAtOffset(0L-PrevSize()); }
 		
 	bool InUse() 
 		{ return (bool)(mSize & kChunkInUse); }

Modified: trunk/Source/common/SC_AllocPool.cpp
===================================================================
--- trunk/Source/common/SC_AllocPool.cpp	2008-12-13 17:14:07 UTC (rev 8119)
+++ trunk/Source/common/SC_AllocPool.cpp	2008-12-13 17:17:42 UTC (rev 8120)
@@ -173,7 +173,7 @@
 	if (!chunk->PrevInUse()) /* consolidate backward */
 	{
 		size_t prevSize = chunk->PrevSize();
-		chunk = chunk->ChunkAtOffset(-prevSize);
+		chunk = chunk->ChunkAtOffset(0L-prevSize);
 		size += prevSize;
 		UnlinkFree(chunk);
 	}


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.

_______________________________________________
sc-dev mailing list

info (subscription, etc.): http://www.beast.bham.ac.uk/research/sc_mailing_lists.shtml
archive: https://listarc.bham.ac.uk/marchives/sc-dev/
search: https://listarc.bham.ac.uk/lists/sc-dev/search/