changeset 175:38bdbab60972 no-big-mmap

munmap() the tables too!
author mas01cr
date Wed, 14 Nov 2007 16:40:07 +0000
parents 2826339b4e92
children 8193dbd66e34
files audioDB.cpp
diffstat 1 files changed, 11 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/audioDB.cpp	Wed Nov 14 16:32:18 2007 +0000
+++ b/audioDB.cpp	Wed Nov 14 16:40:07 2007 +0000
@@ -111,6 +111,17 @@
     munmap(indata,statbuf.st_size);
   if(db)
     munmap(db,dbH->dbSize);
+  if(fileTable)
+    munmap(fileTable, dbH->trackTableOffset - dbH->fileTableOffset);
+  if(trackTable)
+    munmap(trackTable, dbH->dataOffset - dbH->trackTableOffset);
+  if(dataBuf)
+    munmap(dataBuf, dbH->timesTableOffset - dbH->dataOffset);
+  if(timesTable)
+    munmap(dataBuf, dbH->l2normTableOffset - dbH->timesTableOffset);
+  if(l2normTable)
+    munmap(l2normTable, dbH->dbSize - dbH->l2normTableOffset);
+
   if(dbfid>0)
     close(dbfid);
   if(infid>0)
@@ -2652,4 +2663,3 @@
 int main(const unsigned argc, char* const argv[]){
   audioDB(argc, argv);
 }
-