summaryrefslogtreecommitdiffstats
path: root/courgette/memory_allocator.h
Commit message (Collapse)AuthorAgeFilesLines
* ifdef OS_NAME -> if defined(OS_NAME)dbeam@chromium.org2013-03-231-1/+1
| | | | | | | | | | | | ifndef OS_NAME -> if !defined(OS_NAME) BUG=none TEST=no regressions Review URL: https://chromiumcodereview.appspot.com/12545059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@190069 0039d316-1c4b-4281-b951-d872f2087c98
* Move file_path.h to base/files.brettw@chromium.org2013-02-241-1/+1
| | | | | | TBR=sky git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184344 0039d316-1c4b-4281-b951-d872f2087c98
* Switch out use of std::string and std::vector for large allocations for a ↵tommi@chromium.org2011-04-061-29/+252
| | | | | | | | | | | | | | | | | buffer class that doesn't throw exceptions. The new buffer class is pretty simple and relies on the MemoryAllocator class that I previously to back large allocations with mapped files when memory is scarce. That reduced the number of crashes quite a bit but we still crash on machines that are simply out of diskspace as well. So, the right thing to do is to expect and handle failures which is what this cl is all about. What we should see once this has landed is that crash dumps due to courgette running out of disk space should disappear from crash/ and instead we should see the number of users that run into this particular problem in dashboards. TEST=Courgette out-of-memory/out-of-diskspace errors should disappear from crash/ BUG=74777 Review URL: http://codereview.chromium.org/6677141 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80648 0039d316-1c4b-4281-b951-d872f2087c98
* Pulling in new icu with msvs2010 fix.bradnelson@google.com2011-03-291-1/+3
| | | | | | | | | | | Cloned http://codereview.chromium.org/6767003/ to land in the same CL. BUG=None TEST=None R=jeanluc@chromium.org Review URL: http://codereview.chromium.org/6698070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79646 0039d316-1c4b-4281-b951-d872f2087c98
* Identifying call sites that need to handle out of memory situations in ↵tommi@chromium.org2011-03-221-0/+41
| | | | | | | | | | | | | | | | | Courgette. There's no functional change here, only interface changes: * Change methods that are known to fail out in the field to return bool instead of void. * Where those methods are called, check the return value and report errors * In debug builds use a specialized template class that forces callers to check return values (this is possible at compile time in gcc, but unfortunately not in VS). The next step will be to change the implementation to not use STL containers. TEST=Run courgette tests. BUG=74777 Review URL: http://codereview.chromium.org/6716006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79030 0039d316-1c4b-4281-b951-d872f2087c98
* Instrument the allocator code so that we can track down the cause of recent ↵tommi@chromium.org2011-03-031-8/+10
| | | | | | | | | | | crashes. BUG=74777 TEST=This should give us a clearer picture of what's going wrong in the recent courgette crashes. Review URL: http://codereview.chromium.org/6611027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76834 0039d316-1c4b-4281-b951-d872f2087c98
* Implementation of an STL compatible allocator for Courgette on Windows.tommi@chromium.org2011-03-011-0/+222
This is to better handle low memory situations when applying a differential patch to a large Chrome setup. For reading input files, I'm also switching to using memory mapped files instead of ReadFileToString to reduce the load on the heap. TEST=courgette.exe should succeed in applying a patch between two chrome 10.x archives on an XP machine with 180MB of physical memory and no page file. BUG=72459,73209 Review URL: http://codereview.chromium.org/6597038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76320 0039d316-1c4b-4281-b951-d872f2087c98