Commit Graph

342 Commits

Author SHA1 Message Date
Mathias Agopian
d606003a66 first attempt to fix the sim 2009-07-13 22:58:25 -07:00
Android (Google) Code Review
b8eccd8660 Merge change 6898
* changes:
  implement Mutex and Condition with pthread instead of calling futex directly.
2009-07-13 21:27:38 -07:00
Mathias Agopian
1499859693 fix [1964315] crash in the surface.cpp while browsing 2009-07-13 18:29:59 -07:00
Mathias Agopian
ec0f1f6720 implement Mutex and Condition with pthread instead of calling futex directly.
internally pthread uses futex. the implementation consists of simple inlines
there are no implementation files anymore.
2009-07-13 15:14:23 -07:00
Mathias Agopian
5cd5d31d10 fix [1967226] Donut orientation animation (dimming and blur) is slower than Cupcake 2009-07-10 17:00:00 -07:00
Mike Reed
e0528ba71b rename libsgl/libcorecg to libskia 2009-07-10 15:33:21 -04:00
Android (Google) Code Review
829cb1304b Merge change 6742
* changes:
  fix [1969200] Uninitialized double passed to Math.sqrt()
2009-07-09 22:12:36 -07:00
Mathias Agopian
80d7a764fc fix [1969200] Uninitialized double passed to Math.sqrt() 2009-07-09 22:11:57 -07:00
Mathias Agopian
4860b74b47 am 4d2dbebf: fix for [1885684] E/SurfaceFlinger( 60): not enough memory for layer bitmap size=4294938624
Merge commit '4d2dbebf3d08209f751585d8cc367369e2f6e32f'

* commit '4d2dbebf3d08209f751585d8cc367369e2f6e32f':
  fix for [1885684] E/SurfaceFlinger( 60): not enough memory for layer bitmap size=4294938624
2009-07-09 20:05:11 -07:00
Mathias Agopian
6e2d6483fe fix for [1885684] E/SurfaceFlinger( 60): not enough memory for layer bitmap size=4294938624 2009-07-09 18:16:43 -07:00
Mathias Agopian
84f6814af4 fix for [1969185] valgrind errors in new gl stuff 2009-07-09 17:30:43 -07:00
Android (Google) Code Review
a93fbf8ae9 am be91fdbc: Merge change 6665 into donut
Merge commit 'be91fdbc5c4f2de3a2bb574a98fdfeef44d8cdb5'

* commit 'be91fdbc5c4f2de3a2bb574a98fdfeef44d8cdb5':
  Fix resources not being set correctly.
2009-07-09 14:12:52 -07:00
Android (Google) Code Review
17500c2031 am 3893da46: Merge change 6614 into donut
Merge commit '3893da46f0a97d59a7687ae2bd71ba855eb5ffe3'

* commit '3893da46f0a97d59a7687ae2bd71ba855eb5ffe3':
  Fix issue 1970108: crash in AudioFlinger::isMusicActive()
2009-07-09 12:49:43 -07:00
Android (Google) Code Review
25c70c8685 am fe811d8b: Merge change 6603 into donut
Merge commit 'fe811d8bd0da15f14702968a9c7deb02db7eec9f'

* commit 'fe811d8bd0da15f14702968a9c7deb02db7eec9f':
  quick fix; utf8_codepoint_count must be utf8_length
2009-07-09 12:49:07 -07:00
Android (Google) Code Review
1b85080b2a am 8a715b4b: Merge change 5510 into donut
Merge commit '8a715b4b791db4390d12e0ded02280592634a424'

* commit '8a715b4b791db4390d12e0ded02280592634a424':
  Add useful functions to String8, which enables users to convert between UTF-8 and UTF-32
2009-07-09 12:48:56 -07:00
Dianne Hackborn
1f59751c3e Fix resources not being set correctly. 2009-07-09 12:41:06 -07:00
Eric Laurent
b025ca0c83 Fix issue 1970108: crash in AudioFlinger::isMusicActive()
Protected calls to MixerThread::isMusicActive() by AudioFlinger::mLock
2009-07-09 03:20:57 -07:00
Android (Google) Code Review
3ccdc56ae0 Merge change 6603 into donut
* changes:
  quick fix; utf8_codepoint_count must be utf8_length
2009-07-08 21:07:09 -07:00
Daisuke Miyakawa
3228a10923 quick fix; utf8_codepoint_count must be utf8_length 2009-07-09 13:05:24 +09:00
Android (Google) Code Review
0d5eee3784 Merge change 5510 into donut
* changes:
  Add useful functions to String8, which enables users to convert between UTF-8 and UTF-32 It will be used in SQL functions in external/sqlite/android. See https://android-git.corp.google.com/g/Gerrit#change,5511 for example.
2009-07-08 18:27:01 -07:00
Dave Sparks
9f1234e460 resolved conflicts for merge of 04c7d0f8 to master 2009-07-08 17:26:05 -07:00
Daisuke Miyakawa
9f220247f6 Add useful functions to String8, which enables users to convert between UTF-8 and UTF-32
It will be used in SQL functions in external/sqlite/android.
See https://android-git.corp.google.com/g/Gerrit#change,5511 for example.

Related internal bug id: 1707173
2009-07-09 09:06:13 +09:00
Dave Sparks
f72d640b7c Add timestamps to video frames to improve A/V sync.
Bug 1927069.
2009-07-08 15:59:25 -07:00
Android (Google) Code Review
4f9039002a am a5188a09: Merge change 6367 into donut
Merge commit 'a5188a09bd20c376b4f0645b0df4c52f8e114e21'

* commit 'a5188a09bd20c376b4f0645b0df4c52f8e114e21':
  Add virtual destructor.
2009-07-07 12:14:01 -07:00
Android (Google) Code Review
ed65428df2 Merge change 6367 into donut
* changes:
  Add virtual destructor.
2009-07-07 12:12:12 -07:00
Marco Nelissen
1c0f5382ed Add virtual destructor. 2009-07-07 11:03:13 -07:00
Eric Laurent
8434c78862 am 88e209dc: Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR
Merge commit '88e209dcf8c2ebddda5c272f46d1bd5478bc639c'

* commit '88e209dcf8c2ebddda5c272f46d1bd5478bc639c':
  Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR
2009-07-07 09:36:14 -07:00
Eric Laurent
0bac53801b Fix issue 1743700: AudioTrack: setPlaybackRate can not set the playback rate to twice of the ouputSR
Store sample rate on 32 bits instead of 16 bits in audio_track_cblk_t.
Removed sampleRate() methods from AudioTrack and AudioRecord: replaced by getSampleRate().
AudioTrack::setSampleRate() no returns a status.
2009-07-07 07:10:45 -07:00
Mathias Agopian
1df3bbb8d8 trying to fix the sim, I'm not even sure this syntaxe is valid, but my compilo doesn't complain 2009-07-06 19:04:55 -07:00
Mathias Agopian
72b0ffe4c3 should fix sim build 2009-07-06 18:07:26 -07:00
Mathias Agopian
0f7f88db27 Merge commit 'goog/master' into merge_master 2009-07-06 14:16:55 -07:00
Android (Google) Code Review
1a16ea88ed am 991eec03: Merge change 6252 into donut
Merge commit '991eec03a73f8803d0f8c80b418480ea25293cfb'

* commit '991eec03a73f8803d0f8c80b418480ea25293cfb':
  Don't re-parse the framework resources all the time.
2009-07-06 14:10:36 -07:00
Dianne Hackborn
0f253efba5 Don't re-parse the framework resources all the time.
A small optimization to the resource code, to not re-parse the framework
resources every time we build a new AssetManager.  Instead, you can now
construct a ResTable from a previously created one...  of course, like the
existing code for using the data in-place, you can't delete the original
ResTable until you have deleted the one that has been constructed from it.
2009-07-06 11:12:37 -07:00
Android (Google) Code Review
4361996a8c am c7396025: Merge change 6084 into donut
Merge commit 'c7396025e59524e7ef639fd86fc23123939ee91c'

* commit 'c7396025e59524e7ef639fd86fc23123939ee91c':
  Return CAMERA_ERROR_SERVER_DIED to camera app when camera service dies (bug 1956726)
2009-07-06 11:02:33 -07:00
Android (Google) Code Review
7887aa766e am 2bbb80e1: Merge change 5994 into donut
Merge commit '2bbb80e183c6492689f8b10b2d0f5dfe9872a6ac'

* commit '2bbb80e183c6492689f8b10b2d0f5dfe9872a6ac':
  Less logging in some places.  More in others.
2009-07-03 08:18:22 -07:00
Mathias Agopian
af54ab9d88 don't need to link against libsgl 2009-07-02 19:04:39 -07:00
Mathias Agopian
7303c6bf1a get rid of references to MemoryDealer in SurfaceFlinger 2009-07-02 18:50:51 -07:00
Mathias Agopian
6b5513538a forgot to remove those files 2009-07-02 18:46:57 -07:00
Mathias Agopian
759fdb2ef7 free gralloc buffers as soon as possible (when a surface is not visible any longer), client who have the buffers still mapped won't crash, btu may see garbage data 2009-07-02 18:45:29 -07:00
Android (Google) Code Review
f777ac1a2b Merge change 6084 into donut
* changes:
  Return CAMERA_ERROR_SERVER_DIED to camera app when camera service dies (bug 1956726)
2009-07-02 11:00:41 -07:00
James Dong
16f3d35459 Return CAMERA_ERROR_SERVER_DIED to camera app when camera service dies (bug 1956726) 2009-07-02 10:04:20 -07:00
Android (Google) Code Review
47a1a39ce9 am 6e1647a2: Merge change 5829 into donut
Merge commit '6e1647a212317f4ee8bcc23948b6621a59172954'

* commit '6e1647a212317f4ee8bcc23948b6621a59172954':
  Fix issue #1673793: Theme styles don't apply.
2009-07-01 22:43:58 -07:00
Mathias Agopian
84d1f7a098 Merge commit 'goog/master' into merge_master 2009-07-01 18:33:18 -07:00
Joe Onorato
00dae0a084 Less logging in some places. More in others. 2009-07-01 21:04:03 -04:00
Mathias Agopian
78f1c1949f Allocate 16MB for surfaces on Firstone, since 8MB is way to small for our bigger screen. 2009-07-01 17:47:38 -07:00
Wu-cheng Li
cd998742c3 am b8a10fe4: Allow setPreviewDisplay after startPreview.
Merge commit 'b8a10fe45657f2dcc50cae8a06805f8438a6937e'

* commit 'b8a10fe45657f2dcc50cae8a06805f8438a6937e':
  Allow setPreviewDisplay after startPreview.
2009-07-01 11:20:08 -07:00
Android (Google) Code Review
99da6dd7f2 am 58ebdcc0: Merge change 5625 into donut
Merge commit '58ebdcc06eca06741460a7db2be4b79e3865eb88'

* commit '58ebdcc06eca06741460a7db2be4b79e3865eb88':
  fix [1947273] the DimLayer causes the whole screen to update during transactions
2009-07-01 00:06:47 -07:00
Android (Google) Code Review
faeef8ede6 Merge change 5829 into donut
* changes:
  Fix issue #1673793: Theme styles don't apply.
2009-06-30 14:04:55 -07:00
Dianne Hackborn
e356292467 Fix issue #1673793: Theme styles don't apply.
It turns out this was not a problem in the resource code at all.  Rather,
the system process has a cache of pre-loaded attributes it uses to avoid
continually reloading things as it needs them.  Well it turns out this
cache wasn't flushed after a package was uninstalled or a configuration
changed, so you could re-install an app where you change its style resources
so its theme now points to one that is inconsistent in the cache.

This is mostly a problem for developers, where they continually install
new versions of an app where resources have changed.  This could possibly
show up when updating an app on a normal phone, although the problem would
eventually correct itself since this cache uses weak references.

Anyway, the cache is now reworked to be flushed appropriately.

This change also includes an update to aapt to be able to dump the
contents of bags in resources.
2009-06-30 13:27:30 -07:00
Wu-cheng Li
988fb62884 Allow setPreviewDisplay after startPreview. 2009-07-01 01:41:25 +08:00
Mathias Agopian
2dd6727c46 when there is a choice between UPDATE_ON_DEMAND and SWAP_BUFFER optimizations, choose UPDATE_ON_DEMAND which is often more efficient. 2009-06-29 18:57:42 -07:00
Mathias Agopian
29d06ac9a4 fix a bug that caused artifacts when SWAP_RECTANGLE was enabled 2009-06-29 18:49:56 -07:00
Mathias Agopian
9f96145725 Region::makeBoundsSelf() efficiently turns a region to its bounds 2009-06-29 18:46:37 -07:00
Mathias Agopian
446ff92038 don't use a 1/4th of the screen size texture for the dim layer
we can't use a texture of 1/4th of the screen for the dim layer, because the mdp internal input resultion is alwyas integers and for very small blits of a couple pixels the scale factor can get way out of range, for instance for a 7 pixels source, the scale factor would be either 7 (7/1) or 3.5 (7/2) instead of 4 (7/1.75). This caused the mdp to fail in some cases and revert to software. we now always use a texture of the actual screen size, so the problem will never happen. This burns 300KB of pmem instead of 21KB. On devices with a larger screen we might want to use a smaller texture and tile it by hand.
2009-06-29 17:32:20 -07:00
Android (Google) Code Review
468edaa46d am d09f86ce: Merge changes 5548,5549 into donut
Merge commit 'd09f86ce175fad6ddbd446363f327dfa0575a1d2'

* commit 'd09f86ce175fad6ddbd446363f327dfa0575a1d2':
  Better (and less) logging from backup.
  Add an extra null terminator.  String8::unlockBuffer is
2009-06-29 16:37:39 -07:00
Android (Google) Code Review
b9c8a73496 am 72eb0aca: Merge change 5483 into donut
Merge commit '72eb0acad5cffc57ce5006f6deab29ee259e461e'

* commit '72eb0acad5cffc57ce5006f6deab29ee259e461e':
  Expand support for different screen sizes.
2009-06-29 16:37:17 -07:00
Mathias Agopian
a8d44f75e1 fix [1947273] the DimLayer causes the whole screen to update during transactions 2009-06-29 14:44:11 -07:00
Mathias Agopian
6b3287b5d4 fix [1947273] the DimLayer causes the whole screen to update during transactions 2009-06-28 02:54:16 -07:00
Mathias Agopian
b8a5560e13 fix an update bug with SHOW_UPDATE debug feature. Fix a problem with the debug binder codes too 2009-06-26 19:06:36 -07:00
Android (Google) Code Review
d8c2564bbf Merge changes 5548,5549 into donut
* changes:
  Better (and less) logging from backup.
  Add an extra null terminator.  String8::unlockBuffer is supposed to be doing this, but it's not and I can't figure out why.  This makes BackupHelperDispatcher able to read the keys correctly.
2009-06-26 14:19:59 -07:00
Joe Onorato
6eabaa311f Better (and less) logging from backup. 2009-06-26 17:19:11 -04:00
Dianne Hackborn
21342c5c19 Expand support for different screen sizes.
Applications can now declare that they support small, normal, or
large screens.  Resource selection can also be done based on these
sizes.  By default, pre-Donut apps are false for small and large,
and Donut or later apps are assumed to support all sizes.  In either
case they can use <supports-screens> in their manifest to declare
what they actually support.
2009-06-26 13:37:05 -07:00
Mathias Agopian
d512f238a6 add support for out-of-range copybit scaling. camera capture is in color again 2009-06-25 17:41:12 -07:00
Mathias Agopian
958b3cac99 use 1/16 the size (20KB) for the dim texture in the copybit/msm case 2009-06-25 16:21:32 -07:00
Mathias Agopian
240c9fe59e use copybit for eglSwapBuffers() copy-back operations 2009-06-25 15:39:25 -07:00
Android (Google) Code Review
694fcc5d1d am c44989d6: Merge change 5350 into donut
Merge commit 'c44989d6c7bcc761fb37f54fd37aac2070ba8e5e'

* commit 'c44989d6c7bcc761fb37f54fd37aac2070ba8e5e':
  move ui/Time.cpp to core/jni, since this is the only place it is used
2009-06-25 15:11:09 -07:00
Mathias Agopian
a8664df810 move ui/Time.cpp to core/jni, since this is the only place it is used 2009-06-25 14:39:56 -07:00
Mathias Agopian
2ab55a4e31 make use of new eglGetRenderBufferANDROID extension to clean-up a bit a few hacks added recently 2009-06-25 00:09:27 -07:00
Mathias Agopian
5911aa9510 copybit now uses a native_handle_t* instead of a fd/offset 2009-06-24 20:39:16 -07:00
Mathias Agopian
69029eb5ab hack copybit back in for video playback on msm7k. we have h/w accelerated video again 2009-06-24 20:39:16 -07:00
Mathias Agopian
4c4b387afb merge master in master_gl 2009-06-24 18:31:21 -07:00
Android (Google) Code Review
6ef6895b03 am df65b60c: Merge change 5243 into donut
Merge commit 'df65b60ce33e5a56815864f8f0713e25378fa649'

* commit 'df65b60ce33e5a56815864f8f0713e25378fa649':
  Only report "unknown metadata" once per restore helper
2009-06-24 15:45:20 -07:00
Christopher Tate
3fc010e74e am 54118adb: Put back LOGP -> printf in the backup helper code
Merge commit '54118adb3766fdf73a409102b88d7494bb6889a3'

* commit '54118adb3766fdf73a409102b88d7494bb6889a3':
  Put back LOGP -> printf in the backup helper code
2009-06-24 15:44:40 -07:00
Android (Google) Code Review
5a35e220c5 am 0e034e5a: Merge change 5162 into donut
Merge commit '0e034e5a9a71e5e196baff630dca796a0e3ed3e2'

* commit '0e034e5a9a71e5e196baff630dca796a0e3ed3e2':
  Preserve file access mode when backing up / restoring files
2009-06-24 15:44:37 -07:00
Christopher Tate
bd95c1d3af Only report "unknown metadata" once per restore helper
Also removes the auto-free object, replacing it with direct memory manipulation.
2009-06-24 13:57:29 -07:00
Android (Google) Code Review
de5b60b062 am eaa89f74: Merge change 5172 into donut
Merge commit 'eaa89f74c04c0f10d5f3f8190b457087537bff2e'

* commit 'eaa89f74c04c0f10d5f3f8190b457087537bff2e':
  Remove deprecated callback function support.
2009-06-24 13:54:13 -07:00
Android (Google) Code Review
e193f7cd9e am 3d7b8d1a: Merge change 5158 into donut
Merge commit '3d7b8d1aa6a362292f56defbe8fb2d5653f79282'

* commit '3d7b8d1aa6a362292f56defbe8fb2d5653f79282':
  Use a ref-counted callback interface for Camera.
2009-06-24 13:54:09 -07:00
Christopher Tate
6441a76b2e Put back LOGP -> printf in the backup helper code 2009-06-24 11:20:51 -07:00
Android (Google) Code Review
8068d16df6 Merge change 5162 into donut
* changes:
  Preserve file access mode when backing up / restoring files
2009-06-24 11:18:01 -07:00
Dave Sparks
dc76f7bfa1 Remove deprecated callback function support.
This is the last of a 3-part change to modify the camera to use
a more streamlined callback interface. This change removes the
old code.
Bug 1884362
2009-06-24 07:58:27 -07:00
Dave Sparks
bbbc7cb77e Use a ref-counted callback interface for Camera.
This allows the camera service to hang onto the callback interface
until all callbacks have been processed. This prevents problems
where pending callbacks in binder worker threads are processed
after the Java camera object and its associated native resources
have been released.
Bug 1884362
2009-06-24 07:58:27 -07:00
Mathias Agopian
2e12324581 fix a bug causing push-buffer surfaces' identity to be garbage, which resulted in some attributes (size/pos) to fail to be set 2009-06-23 20:06:46 -07:00
Mathias Agopian
1fed11c86a checkpoint. bring back video/camera 2009-06-23 18:08:22 -07:00
Christopher Tate
5c2882b25c Preserve file access mode when backing up / restoring files
This change adds a fixed-size metadata block at the head of each file's content
entity.  The block is versioned, and fixed-size on the theory that it might be
nice to be able to recover the content (if not the full metadata) of the files
if we're ever confronted with data backed up some hypothetical future helper
that stored expanded metadata.

The net effect is that now on restore, we assign the same access mode to the
file that it originally had when backed up.

Also, some of the code was failing to properly free transient heap-based buffers
when it encountered errors.  This has been fixed with the addition of a tiny
stack-based object whose job it is to free() its designated pointer from its
destructor.
2009-06-23 17:40:44 -07:00
Christopher Tate
2d1db86e45 am 11b15779: Add file mode to the file-backup saved state blobs
Merge commit '11b157790234d3d2f116ce4c7ed1d3d00fb78bc3'

* commit '11b157790234d3d2f116ce4c7ed1d3d00fb78bc3':
  Add file mode to the file-backup saved state blobs
2009-06-23 13:28:41 -07:00
Christopher Tate
ab2e9e81e1 Add file mode to the file-backup saved state blobs
This change puts the file's access mode into the saved-state blob used by the
file backup helpers.  The tests have been updated for the new blob content
format.

What this change *doesn't* do is actually backup/restore the file mode.  This
change is a prerequisite for that, but mode preservation in backup/restore will
require adding metadata to the backup data stream itself, so will be approached
a bit more carefully.

(Also fixed one outright bug in the test program: ReadEntityData() had been
changed to return a ssize_t union of either a byte-count or a negative number
indicating error, but the test program was still assuming that nonzero == error,
and was spuriously failing.)
2009-06-23 13:07:47 -07:00
Android (Google) Code Review
d056f2d087 am 72be4049: Merge change 4910 into donut
Merge commit '72be40490951d3f9d0ada16fcf5288d0c3306d88'

* commit '72be40490951d3f9d0ada16fcf5288d0c3306d88':
  fix warnings that will show up with GCC 4.4 (in master)
2009-06-22 14:03:17 -07:00
Android (Google) Code Review
cfb991d1f8 Merge change 4910 into donut
* changes:
  fix warnings that will show up with GCC 4.4 (in master)
2009-06-22 14:01:25 -07:00
Android (Google) Code Review
2a84f2e369 am 856dd8a6: Merge change 4952 into donut
Merge commit '856dd8a60a70a5b7dca2bf2114872ce063e2ad60'

* commit '856dd8a60a70a5b7dca2bf2114872ce063e2ad60':
  Helper API cleanup.  Allows multiple helpers to function,
2009-06-22 13:20:31 -07:00
Joe Onorato
9cda3e02c6 Helper API cleanup. Allows multiple helpers to function,
because they'll always go in the same order, and this lets
us not have to write headers to keep them paired.
2009-06-22 13:02:24 -07:00
Mathias Agopian
52ed26a78b fix warnings that will show up with GCC 4.4 (in master) 2009-06-22 02:35:32 -07:00
Mathias Agopian
cca6b4267d Merge commit 'goog/master' into merge_master 2009-06-19 17:41:14 -07:00
Mathias Agopian
f9d932774e fix a memory corruption where a SF Client could be used after it's been destroyed 2009-06-19 17:00:27 -07:00
Android (Google) Code Review
03428fcc8b am 1585bd24: Merge change 4828 into donut
Merge commit '1585bd24c10d16351f89e32dddbfa799f18db6bd'

* commit '1585bd24c10d16351f89e32dddbfa799f18db6bd':
  Report densities in badging, debugging for nine patch bug.
2009-06-19 16:44:07 -07:00
Mathias Agopian
cd8c5e29c2 release the last reference to surfaces explicitely instead of letting it go implicitely when the message is destroyed 2009-06-19 16:24:02 -07:00
Dianne Hackborn
be1bc0a1f9 Report densities in badging, debugging for nine patch bug.
The aapt tool now reports all available densities like it already did
for locales.  Also this includes more resource data output, which I
was using to examine bug #1867049 (which at this point I am unable to
reproduce).
2009-06-19 15:13:28 -07:00
Android (Google) Code Review
05915a4d9d am c6282977: Merge change 4718 into donut
Merge commit 'c6282977180c220b1a68c23a328e7d75a11963ab'

* commit 'c6282977180c220b1a68c23a328e7d75a11963ab':
  Fix sim-eng build and simplify previous lcd-density related patch
2009-06-18 19:46:59 -07:00
David 'Digit' Turner
ae71accf63 Fix sim-eng build and simplify previous lcd-density related patch 2009-06-19 04:41:12 +02:00
Android (Google) Code Review
4910dc6256 am 5502f04c: Merge change 4709 into donut
Merge commit '5502f04c1dcf2b1918858bacb99fb0480a711707'

* commit '5502f04c1dcf2b1918858bacb99fb0480a711707':
  backup stuff
2009-06-18 19:04:56 -07:00
Android (Google) Code Review
0388b51341 am 16ce3504: Merge change 4708 into donut
Merge commit '16ce3504c5bf98d95d5c36001f755bb4b15253c9'

* commit '16ce3504c5bf98d95d5c36001f755bb4b15253c9':
  Make RestoreHelper and friends also write out the snapshot state.
2009-06-18 19:04:50 -07:00