diff options
author | Michael Stahl <mstahl@redhat.com> | 2013-12-09 23:07:44 +0100 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2013-12-10 15:28:53 +0100 |
commit | 7b9c61c7f20a679c5316a288c2ec2ffbf04b4200 (patch) | |
tree | 5af6e829d9a315c60d780d35aeda327a7caef58a /svl | |
parent | 17dab5bf8efb3fd676e6854474b199b681d0dc28 (diff) |
editeng: fix more 32-bit Time breakage
SfxDateTimeItem and SvxExtTimeField need to use 64-bit integer to store
Time as well. These classes also have binary serialization
Load()/Save() methods but they are unlikely to be used in a persistent
way, just for the clipboard.
The problem is easy to reproduce in Impress: Insert->Field->Time(fixed)
(regression from 9830fd36dbdb72c79703b0c61efc027fba793c5a)
Change-Id: I5946c5b94dd5a509805b6dc40461bbd910caffc4
Diffstat (limited to 'svl')
-rw-r--r-- | svl/source/items/dateitem.cxx | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/svl/source/items/dateitem.cxx b/svl/source/items/dateitem.cxx index ca4c7503b985..a734b3569f77 100644 --- a/svl/source/items/dateitem.cxx +++ b/svl/source/items/dateitem.cxx @@ -90,9 +90,9 @@ SfxPoolItem* SfxDateTimeItem::Create( SvStream& rStream, sal_uInt16 ) const { DBG_CHKTHIS(SfxDateTimeItem, 0); sal_uInt32 nDate = 0; - sal_Int32 nTime = 0; + sal_Int64 nTime = 0; rStream >> nDate; - rStream >> nTime; + rStream.ReadInt64(nTime); DateTime aDT(nDate, nTime); return new SfxDateTimeItem( Which(), aDT ); } @@ -103,7 +103,7 @@ SvStream& SfxDateTimeItem::Store( SvStream& rStream, sal_uInt16 ) const { DBG_CHKTHIS(SfxDateTimeItem, 0); rStream << aDateTime.GetDate(); - rStream << static_cast<sal_Int32>(aDateTime.GetTime()); + rStream.WriteInt64(aDateTime.GetTime()); return rStream; } |