summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Tardon <dtardon@redhat.com>2013-06-19 12:38:43 +0200
committerCaolán McNamara <caolanm@redhat.com>2013-06-19 13:26:51 +0000
commit593b0352d22d775b5646eaf4928863fbb5a40aea (patch)
tree474fd9ce947a68981347ecaf74a170371e2ef8a9
parent350994ffdc51787ecd51a8b7ce4e504c2432dd9d (diff)
fix rtf import on big endian
(cherry picked from commit fa2363344cbf85af17a80c4757b226ab43391af6) Change-Id: Ia9f589752176849f7f6700483e933767e509edf3 Signed-off-by: David Tardon <dtardon@redhat.com> Reviewed-on: https://gerrit.libreoffice.org/4355 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--writerfilter/source/rtftok/rtffly.hxx42
1 files changed, 15 insertions, 27 deletions
diff --git a/writerfilter/source/rtftok/rtffly.hxx b/writerfilter/source/rtftok/rtffly.hxx
index 918f800f9047..f804b006397f 100644
--- a/writerfilter/source/rtftok/rtffly.hxx
+++ b/writerfilter/source/rtftok/rtffly.hxx
@@ -36,18 +36,18 @@ namespace writerfilter {
{
public:
RTFVertOrient(sal_uInt16 nValue)
+ : nVal(nValue)
{
- Value.nVal = nValue;
}
sal_uInt16 GetOrient() const
{
- return Value.Flags.nOrient;
+ return OSL_LONIBBLE(OSL_LOBYTE(nVal));
}
sal_uInt16 GetRelation() const
{
- return Value.Flags.nRelOrient;
+ return OSL_HINIBBLE(OSL_LOBYTE(nVal));
}
sal_Int32 GetAlign() const
@@ -90,19 +90,11 @@ namespace writerfilter {
sal_uInt16 GetValue() const
{
- return Value.nVal;
+ return nVal;
}
private:
- union
- {
- struct
- {
- sal_uInt16 nOrient : 4;
- sal_uInt16 nRelOrient : 4;
- } Flags;
- sal_uInt16 nVal;
- } Value;
+ sal_uInt16 nVal;
};
/// Stores the horizontal orientation properties of an RTF fly frame.
@@ -110,18 +102,23 @@ namespace writerfilter {
{
public:
RTFHoriOrient(sal_uInt16 nValue)
+ : nVal(nValue)
{
- Value.nVal = nValue;
}
sal_uInt16 GetOrient() const
{
- return Value.Flags.nOrient;
+ return OSL_LONIBBLE(OSL_LOBYTE(nVal));
}
sal_uInt16 GetRelation() const
{
- return Value.Flags.nRelOrient;
+ return OSL_LONIBBLE(OSL_HIBYTE(nVal));
+ }
+
+ sal_uInt16 GetRelAnchor() const
+ {
+ return OSL_HINIBBLE(OSL_LOBYTE(nVal));
}
sal_Int32 GetAlign() const
@@ -170,20 +167,11 @@ namespace writerfilter {
sal_uInt16 GetValue() const
{
- return Value.nVal;
+ return nVal;
}
private:
- union
- {
- struct
- {
- sal_uInt16 nOrient : 4;
- sal_uInt16 nRelAnchor : 4;
- sal_uInt16 nRelOrient : 4;
- } Flags;
- sal_uInt16 nVal;
- } Value;
+ sal_uInt16 nVal;
};
} // namespace rtftok
} // namespace writerfilter