summaryrefslogtreecommitdiffstats
path: root/base/pickle_unittest.cc
Commit message (Collapse)AuthorAgeFilesLines
* Use a direct include of strings headers in base/.avi@chromium.org2013-06-101-1/+1
| | | | | | | | | | BUG=247723 TEST=none TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/16667013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205261 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrite std::string("") to std::string(), Linux edition.dcheng@chromium.org2013-04-091-2/+2
| | | | | | | | | | | | | | | | | | | This patch was generated by running the empty_string clang tool across the Chromium Linux compilation database. Implicitly or explicitly constructing std::string() with a "" argument is inefficient as the caller needs to emit extra instructions to pass an argument, and the constructor needlessly copies a byte into internal storage. Rewriting these instances to simply call the default constructor appears to save ~14-18 kilobytes on an optimized release build. BUG=none Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=193020 Review URL: https://codereview.chromium.org/13145003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193040 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Rewrite std::string("") to std::string(), Linux edition."dcheng@chromium.org2013-04-091-2/+2
| | | | | | | | | | | | | | This reverts commit e59558b78e8c6a1b0bd916a724724b638c3c91b6. Revert "Fix build after r193020." This reverts commit 558a35897f6b3ffbcaefde927c1f150b815d140a. Revert "Really fix build after r193020." This reverts commit e3748a79b523a8d365d4a33ef986eebb4186fa78. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193030 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrite std::string("") to std::string(), Linux edition.dcheng@chromium.org2013-04-091-2/+2
| | | | | | | | | | | | | | | | | This patch was generated by running the empty_string clang tool across the Chromium Linux compilation database. Implicitly or explicitly constructing std::string() with a "" argument is inefficient as the caller needs to emit extra instructions to pass an argument, and the constructor needlessly copies a byte into internal storage. Rewriting these instances to simply call the default constructor appears to save ~14-18 kilobytes on an optimized release build. BUG=none Review URL: https://codereview.chromium.org/13145003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193020 0039d316-1c4b-4281-b951-d872f2087c98
* base: Convert scoped_arrays to the new scoped_ptr style.tfarina@chromium.org2013-01-181-3/+3
| | | | | | | | | | BUG=109874 R=darin@chromium.org,ajwong@chromium.org Review URL: https://chromiumcodereview.appspot.com/11961021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177670 0039d316-1c4b-4281-b951-d872f2087c98
* Small fixes to allow unit tests to compile with gcc 4.7.x (tested with gcc ↵kamil.jiwa@gmail.com2013-01-031-2/+2
| | | | | | | | 4.7.2) Review URL: https://chromiumcodereview.appspot.com/11568033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174956 0039d316-1c4b-4281-b951-d872f2087c98
* Add support to Pickle for reading and writing floatsrbyers@chromium.org2012-11-281-0/+6
| | | | | | | | | BUG=136034 Review URL: https://chromiumcodereview.appspot.com/11416150 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169957 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor Pickle Read methods to use higher performance PickleIterator.jbates@chromium.org2012-03-071-29/+40
| | | | | | | | | | | | | | | | There was a lot of redundant error checking and initialization code in all Pickle Read methods because of the void** iterator type. This change replaces the void* iterator with PickleIterator, which encapsulates the read pointer so that less error checking and initialization code is needed for reading. PickleIterator has all the necessary data to do the actual reading. The advantage of having it provide Read methods (as opposed to leaving them solely in the Pickle interface) is that the callers do not need to pass around the const Pickle* once they have a PickleIterator. Followup CLs will refactor the call sites to remove const Pickle* arguments where they are now unnecessary. Then the Pickle::Read* methods can be removed entirely. The alternative approach would have been to change the Pickle::Read methods to non-const and remove the iterator parameter (making Read methods advance an internal read pointer). Unfortunately, the const Read with iterator design is entrenched throughout the chromium code, making this a much more complex change with the same performance outcome. BUG=13108 Review URL: https://chromiumcodereview.appspot.com/9447084 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125447 0039d316-1c4b-4281-b951-d872f2087c98
* Move some files from base to base/memory.levin@chromium.org2011-03-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | raw_scoped_refptr_mismatch_checker.h ref_counted.cc ref_counted.h ref_counted_memory.cc ref_counted_memory.h ref_counted_unittest.cc scoped_callback_factory.h scoped_comptr_win.h scoped_handle.h scoped_native_library.cc scoped_native_library.h scoped_native_library_unittest.cc scoped_nsobject.h scoped_open_process.h scoped_ptr.h scoped_ptr_unittest.cc scoped_temp_dir.cc scoped_temp_dir.h scoped_temp_dir_unittest.cc scoped_vector.h singleton.h singleton_objc.h singleton_unittest.cc linked_ptr.h linked_ptr_unittest.cc weak_ptr.cc weak_ptr.h weak_ptr_unittest.cc BUG=None TEST=Compile Review URL: http://codereview.chromium.org/6714032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79524 0039d316-1c4b-4281-b951-d872f2087c98
* Propagate the remote socket address to URLRequest and to ↵bryner@chromium.org2011-02-221-0/+6
| | | | | | | | | | | | | | | | ViewHostMsg_FrameNavigate. This will be used to run pre-classification checks for client-side phishing detection, and will also enable the socket address to be exposed via the webRequest extension API. This is adapted from the original patch by pmarks on http://codereview.chromium.org/6369003/ . BUG=51663 TEST=added socket address checks to various unittests Review URL: http://codereview.chromium.org/6488010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75620 0039d316-1c4b-4281-b951-d872f2087c98
* Check that we've got a complete header before accessing its fields.glider@chromium.org2011-01-261-0/+11
| | | | | | | | | | | | | This patch was prepared by Evgeniy Stepanov (eugenis@chromium.org) and reviewed at http://codereview.chromium.org/6353010/ BUG=70376 TEST=none TBR=darin,willchan Review URL: http://codereview.chromium.org/6347013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72634 0039d316-1c4b-4281-b951-d872f2087c98
* Pickle: handle invalid data on 64 bit systems.rvargas@google.com2010-11-151-0/+33
| | | | | | | | | | | | There was a problem with pointer arithmetic for 64 bit systems so invalid data was not properly detected. Now we do explicit tests. BUG=56449 TEST=base_unittests Review URL: http://codereview.chromium.org/4716006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66149 0039d316-1c4b-4281-b951-d872f2087c98
* Don't allow dragging browser actions between regular and incognito windows.mpcomplete@chromium.org2010-03-301-0/+14
| | | | | | | | | | | | This fixes a crash. Also small fix to Pickle::ReadBytes to fix up the iterator if it is NULL. BUG=39340 Review URL: http://codereview.chromium.org/1542007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43147 0039d316-1c4b-4281-b951-d872f2087c98
* WriteData and BeginWriteData should fail if length iswtc@chromium.org2009-07-281-1/+14
| | | | | | | | | | | | | negative. Add a unit test for WriteData(NULL, 0). R=darin BUG=none TEST=new unit test should pass Review URL: http://codereview.chromium.org/159310 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21886 0039d316-1c4b-4281-b951-d872f2087c98
* Fix embarassing purify error due to length mismatch.cevans@chromium.org2009-06-251-1/+1
| | | | | | | | | | BUG=NONE TEST=PickleTest.EvilLengths TBR=cpu Review URL: http://codereview.chromium.org/149011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19255 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a couple of integer issues in Pickle deserialization. Neither representcevans@chromium.org2009-06-251-0/+28
| | | | | | | | | | | | | a significant risk because the code is not directly exposed to user input. In addition, neither error leads to memory corruption. At worse, there's a C++ exception or abort(). BUG=NONE TEST=PickleTest.EvilLengths Review URL: http://codereview.chromium.org/146121 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19249 0039d316-1c4b-4281-b951-d872f2087c98
* Change Pickle to double its capacity by default, rather than increasingmpcomplete@google.com2009-03-161-3/+4
| | | | | | | | | incrementally, when it needs to expand on writing data. BUG=8760 Review URL: http://codereview.chromium.org/46056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11769 0039d316-1c4b-4281-b951-d872f2087c98
* Remove logging.h from cc files that don't use it.thestig@chromium.org2009-03-121-1/+0
| | | | | | Review URL: http://codereview.chromium.org/42155 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11593 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGEdeanm@chromium.org2009-03-101-1/+0
| | | | | | | | | Normalize end of file newlines in base/. All files end in a single newline. Review URL: http://codereview.chromium.org/42011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11329 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-241-28/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* more bustage fixesdarin@google.com2008-08-151-2/+3
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@925 0039d316-1c4b-4281-b951-d872f2087c98
* Fix more compiler warnings.darin@google.com2008-08-151-6/+6
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@922 0039d316-1c4b-4281-b951-d872f2087c98
* Some cross platform changes and general cleanups to Pickle.deanm@google.com2008-08-071-10/+16
| | | | | | | | | | | - Clean up TrimWriteData, and remove the unneeded VariableLengthBuffer struct. Modify a test to slightly test TrimWriteData, but it probably deserves more. - Remove unneeded includes in pickle_unittest, including windows.h. - According to 3.5 of the C++ standard, CustomHeader could not be used as a template argument, because it had no linkage. This now builds on GCC. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@508 0039d316-1c4b-4281-b951-d872f2087c98
* Add base to the repository.initial.commit2008-07-261-0/+238
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8 0039d316-1c4b-4281-b951-d872f2087c98