Changeset f4d063 for src/Helpers


Ignore:
Timestamp:
Dec 16, 2010, 5:32:23 PM (14 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
Children:
ad7270
Parents:
c77ac8
git-author:
Frederik Heber <heber@…> (12/15/10 15:54:40)
git-committer:
Frederik Heber <heber@…> (12/16/10 17:32:23)
Message:

MEMFIX: MemDebug ignores all unknown sources. Removed all dependencies around main(), moved to builder_init.?pp.

  • this has been an attempt to fix the warning of a memory leak that actually results into the libboost_filesystem.so over which we have no control. As of now, i I do not quite look through the whole affair. That is, I have a now idea why Till's new memory allocator is used during the initialization of some external library already, but apparently it must have to do with lookup tables present in the exectuable already. Hence, we can not do much about.
  • Nonetheless, we split up main() into some initializating functions which have been outsourced to builder_init.cpp.
  • The only fix then is that we ignore all values of unknown source in MemDebug.
  • Note: We only do accouting of stuff allocated on the heap (e.g. int *test = new int;) and not on stack (int test;)! However, stack space is limited anyway.
Location:
src/Helpers
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • src/Helpers/MemDebug.cpp

    rc77ac8 rf4d063  
    380380  // mark the block as not in the list (will be changed by addEntry)
    381381  entry->isIgnored = true;
    382   Memory::addEntry(entry);
     382  if (line != 0)  { // indicator that we do not know the source
     383    Memory::addEntry(entry);
     384  }
    383385
    384386  // get the checksum...
     
    424426  // mark the block as not in the list (will be changed by addEntry)
    425427  entry->isIgnored = true;
    426   Memory::addEntry(entry);
     428  if (line != 0)  { // indicator that we do not know the source
     429    Memory::addEntry(entry);
     430  }
    427431
    428432  // get the checksum...
  • src/Helpers/MemDebug.hpp

    rc77ac8 rf4d063  
    5252#include <boost/shared_ptr.hpp>
    5353#include <boost/function.hpp>
    54 #include <boost/program_options.hpp>
    5554
    5655
Note: See TracChangeset for help on using the changeset viewer.