[Bf-blender-cvs] [edc7bd5f3f0] blender-v2.82-release: Fix T73862: Fluid Sim file handle resource leak

Campbell Barton noreply at git.blender.org
Mon Mar 9 20:56:34 CET 2020


Commit: edc7bd5f3f054e2efee5d09f357a11be5ee64737
Author: Campbell Barton
Date:   Mon Feb 17 16:04:04 2020 +1100
Branches: blender-v2.82-release
https://developer.blender.org/rBedc7bd5f3f054e2efee5d09f357a11be5ee64737

Fix T73862: Fluid Sim file handle resource leak

===================================================================

M	intern/mantaflow/intern/MANTA_main.cpp

===================================================================

diff --git a/intern/mantaflow/intern/MANTA_main.cpp b/intern/mantaflow/intern/MANTA_main.cpp
index 91853ca566b..34b7b1a40d3 100644
--- a/intern/mantaflow/intern/MANTA_main.cpp
+++ b/intern/mantaflow/intern/MANTA_main.cpp
@@ -2635,6 +2635,7 @@ void MANTA::updateMeshFromUni(const char *filename)
   if (!ibuffer[0]) {  // Any vertices present?
     if (with_debug)
       std::cout << "no vertices present yet" << std::endl;
+    gzclose(gzf);
     return;
   }
 
@@ -2702,6 +2703,7 @@ void MANTA::updateParticlesFromUni(const char *filename, bool isSecondarySys, bo
 
   if (!strcmp(ID, "PB01")) {
     std::cout << "particle uni file format v01 not supported anymore" << std::endl;
+    gzclose(gzf);
     return;
   }
 
@@ -2744,6 +2746,7 @@ void MANTA::updateParticlesFromUni(const char *filename, bool isSecondarySys, bo
   if (!ibuffer[0]) {  // Any particles present?
     if (with_debug)
       std::cout << "no particles present yet" << std::endl;
+    gzclose(gzf);
     return;
   }
 
@@ -2846,16 +2849,19 @@ int MANTA::updateGridFromUni(const char *filename, float *grid, bool isNoise)
   if (!strcmp(ID, "DDF2")) {
     std::cout << "MANTA::updateGridFromUni(): grid uni file format DDF2 not supported anymore"
               << std::endl;
+    gzclose(gzf);
     return 0;
   }
   if (!strcmp(ID, "MNT1")) {
     std::cout << "MANTA::updateGridFromUni(): grid uni file format MNT1 not supported anymore"
               << std::endl;
+    gzclose(gzf);
     return 0;
   }
   if (!strcmp(ID, "MNT2")) {
     std::cout << "MANTA::updateGridFromUni(): grid uni file format MNT2 not supported anymore"
               << std::endl;
+    gzclose(gzf);
     return 0;
   }
 
@@ -2886,6 +2892,7 @@ int MANTA::updateGridFromUni(const char *filename, float *grid, bool isNoise)
     std::cout << "grid dim doesn't match, read: (" << ibuffer[0] << ", " << ibuffer[1] << ", "
               << ibuffer[2] << ") vs setup: (" << resX << ", " << resY << ", " << resZ << ")"
               << std::endl;
+    gzclose(gzf);
     return 0;
   }



More information about the Bf-blender-cvs mailing list