summaryrefslogtreecommitdiffstats
path: root/ipc/param_traits_macros.h
Commit message (Collapse)AuthorAgeFilesLines
* Implement off-the-wire validation scheme for emum types.tsepez@chromium.org2013-06-041-2/+21
| | | | | | | | | | | | | This CL adds explicit IPC macros that can be used to ensure that the values being read off the wire are legitimate for the enum type. BUG=176110 R=jam@chromium.org Review URL: https://chromiumcodereview.appspot.com/15841011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203892 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor Pickle Read methods to use higher performance PickleIterator.jbates@chromium.org2012-03-071-3/+3
| | | | | | | | | | | | | | | | 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
* views: Add an Options enum to MessageBoxView control.tfarina@chromium.org2011-12-071-1/+1
| | | | | | | | | R=sky@chromium.org TBR=jam@chromium.org Review URL: http://codereview.chromium.org/8553001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@113331 0039d316-1c4b-4281-b951-d872f2087c98
* Here are more exports needed for content_unittests to link in the component ↵dpranke@chromium.org2011-09-301-1/+1
| | | | | | | | | | | | build. R=jam@chromium.org, darin@chromium.org BUG=90442 TEST= Review URL: http://codereview.chromium.org/8054037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103394 0039d316-1c4b-4281-b951-d872f2087c98
* Move resource related IPCs to their own file in content. I added a ↵jam@chromium.org2011-03-051-0/+1
| | | | | | | | | IPC_STRUCT_TRAITS_PARENT macro to allow the automatic serializing macros to add a parent struct. TBR=tsepez Review URL: http://codereview.chromium.org/6628035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77048 0039d316-1c4b-4281-b951-d872f2087c98
* Make the implementation .cc files go away, instead have the authors give us ↵tsepez@chromium.org2011-02-111-0/+38
a header only. Review URL: http://codereview.chromium.org/6410007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74637 0039d316-1c4b-4281-b951-d872f2087c98