[Scummvm-cvs-logs] SF.net SVN: scummvm:[45041] scummvm/trunk/engines/sci/engine

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Tue Oct 13 20:53:50 CEST 2009


Revision: 45041
          http://scummvm.svn.sourceforge.net/scummvm/?rev=45041&view=rev
Author:   fingolfin
Date:     2009-10-13 18:53:50 +0000 (Tue, 13 Oct 2009)

Log Message:
-----------
SCI: Merge SegManager::alloc_Hunk into SegManager::allocateHunkEntry

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/seg_manager.cpp
    scummvm/trunk/engines/sci/engine/seg_manager.h

Modified: scummvm/trunk/engines/sci/engine/seg_manager.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/seg_manager.cpp	2009-10-13 18:53:11 UTC (rev 45040)
+++ scummvm/trunk/engines/sci/engine/seg_manager.cpp	2009-10-13 18:53:50 UTC (rev 45041)
@@ -735,9 +735,19 @@
 	ht->freeEntry(addr.offset);
 }
 
-Hunk *SegManager::allocateHunkEntry(const char *hunk_type, int size, reg_t *reg) {
-	Hunk *h = alloc_Hunk(reg);
+Hunk *SegManager::allocateHunkEntry(const char *hunk_type, int size, reg_t *addr) {
+	HunkTable *table;
+	int offset;
 
+	if (!Hunks_seg_id)
+		allocSegment(new HunkTable(), &(Hunks_seg_id));
+	table = (HunkTable *)_heap[Hunks_seg_id];
+
+	offset = table->allocEntry();
+
+	*addr = make_reg(Hunks_seg_id, offset);
+	Hunk *h = &(table->_table[offset]);
+
 	if (!h)
 		return NULL;
 
@@ -752,9 +762,9 @@
 	CloneTable *table;
 	int offset;
 
-	if (!Clones_seg_id) {
+	if (!Clones_seg_id)
 		table = (CloneTable *)allocSegment(new CloneTable(), &(Clones_seg_id));
-	} else
+	else
 		table = (CloneTable *)_heap[Clones_seg_id];
 
 	offset = table->allocEntry();
@@ -824,20 +834,6 @@
 	return &(table->_table[offset]);
 }
 
-Hunk *SegManager::alloc_Hunk(reg_t *addr) {
-	HunkTable *table;
-	int offset;
-
-	if (!Hunks_seg_id)
-		allocSegment(new HunkTable(), &(Hunks_seg_id));
-	table = (HunkTable *)_heap[Hunks_seg_id];
-
-	offset = table->allocEntry();
-
-	*addr = make_reg(Hunks_seg_id, offset);
-	return &(table->_table[offset]);
-}
-
 List *SegManager::lookupList(reg_t addr) {
 	if (getSegmentType(addr.segment) != SEG_TYPE_LISTS) {
 		warning("Attempt to use non-list %04x:%04x as list", PRINT_REG(addr));

Modified: scummvm/trunk/engines/sci/engine/seg_manager.h
===================================================================
--- scummvm/trunk/engines/sci/engine/seg_manager.h	2009-10-13 18:53:11 UTC (rev 45040)
+++ scummvm/trunk/engines/sci/engine/seg_manager.h	2009-10-13 18:53:50 UTC (rev 45041)
@@ -458,8 +458,6 @@
 	int deallocate(SegmentId seg, bool recursive);
 	int createClassTable();
 
-	Hunk *alloc_Hunk(reg_t *);
-
 	SegmentId findFreeSegment() const;
 
 	/**


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




More information about the Scummvm-git-logs mailing list