summaryrefslogtreecommitdiff
path: root/svl
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2013-12-09 23:07:44 +0100
committerMichael Stahl <mstahl@redhat.com>2013-12-10 15:32:27 +0100
commit349bfa2a9a621e6e8041ffea847a76d7c7b114cc (patch)
tree0308cb6f0c8eae7d1029a03edf7cc8e29ee699e3 /svl
parent9b498bb45b34a474b666107265896d69707472d1 (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 (cherry picked from commit 7b9c61c7f20a679c5316a288c2ec2ffbf04b4200)
Diffstat (limited to 'svl')
-rw-r--r--svl/source/items/dateitem.cxx6
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;
}