crossroads

Git mirror of https://crossroads.e-tunity.com/
git clone git://git.finwo.net/app/crossroads
Log | Files | Refs | LICENSE

memmalloc.cc (414B)


      1 #include "memory"
      2 
      3 void *Memory::malloc(size_t sz, string const &desc) {
      4     static int lock;
      5     void *ptr = ::malloc(sz);
      6     MemoryEntry ent = { ptr, sz, desc };
      7     
      8     mutex_lock(&lock);
      9     s_memlog.push_back(ent);
     10     mutex_unlock(&lock);
     11     if (s_follow) {
     12 	mutex_lock(&cout);
     13 	cout << "Memory::malloc(" << sz << ") -> " << ptr << ' '
     14 	     << desc << '\n';
     15 	mutex_unlock(&cout);
     16     }
     17     return ptr;
     18 }