[Scummvm-cvs-logs] SF.net SVN: scummvm: [29330] scummvm/trunk/backends/fs/amigaos4/amigaos4-fs .cpp

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Tue Oct 30 22:57:42 CET 2007


Revision: 29330
          http://scummvm.svn.sourceforge.net/scummvm/?rev=29330&view=rev
Author:   lordhoto
Date:     2007-10-30 14:57:41 -0700 (Tue, 30 Oct 2007)

Log Message:
-----------
- free fib object in AmigaOSFilesystemNode::exists
- cleanup

Modified Paths:
--------------
    scummvm/trunk/backends/fs/amigaos4/amigaos4-fs.cpp

Modified: scummvm/trunk/backends/fs/amigaos4/amigaos4-fs.cpp
===================================================================
--- scummvm/trunk/backends/fs/amigaos4/amigaos4-fs.cpp	2007-10-30 21:37:00 UTC (rev 29329)
+++ scummvm/trunk/backends/fs/amigaos4/amigaos4-fs.cpp	2007-10-30 21:57:41 UTC (rev 29330)
@@ -266,11 +266,11 @@
 }
 
 bool AmigaOSFilesystemNode::exists() const {
+	ENTER();
 	if(_sPath.empty())
 		return false;
 	
 	bool nodeExists = false;
-	ENTER();
 	
 	struct FileInfoBlock *fib = (struct FileInfoBlock *)IDOS->AllocDosObject(DOS_FIB, NULL);
 	if (!fib) {
@@ -281,17 +281,18 @@
 	
 	BPTR pLock = IDOS->Lock((STRPTR)_sPath.c_str(), SHARED_LOCK);
 	if (pLock) {
-		if (IDOS->Examine(pLock, fib) != DOSFALSE) {
+		if (IDOS->Examine(pLock, fib) != DOSFALSE)
 			nodeExists = true;
-		}
 		IDOS->UnLock(pLock);
 	}
 	
+	IDOS->FreeDosObject(DOS_FIB, fib);
 	LEAVE();
 	return nodeExists;
 }
 
 AbstractFilesystemNode *AmigaOSFilesystemNode::getChild(const String &n) const {
+	ENTER();
 	if (!_bIsDirectory) {
 		debug(6, "Not a directory");
 		return 0;
@@ -312,6 +313,7 @@
 
 	IDOS->UnLock(lock);
 
+	LEAVE();
 	return new AmigaOSFilesystemNode(newPath);
 }
 


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