diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2012-09-09 17:20:27 +0200 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2012-09-10 07:34:33 +0200 |
commit | 8a861b99ee0b53d03b6f93a3bd6d256a27172ace (patch) | |
tree | e0fa58f06b6a4543aaf5d12cf38b532a9b52c8a5 | |
parent | bb1511c00acb25c607e8c885f33f1f313b5ea098 (diff) |
don't use unitialized global variable, fdo#53713
Change-Id: I9e5150fb4c5681abe9c786f4c2d80f5a10e8a66b
(cherry picked from commit 2ac26e6b5248f2f3fde8dc4341b01ef15b6c3a29)
Signed-off-by: David Tardon <dtardon@redhat.com>
-rw-r--r-- | sc/source/filter/inc/lotattr.hxx | 7 | ||||
-rw-r--r-- | sc/source/filter/lotus/lotattr.cxx | 12 | ||||
-rw-r--r-- | sc/source/filter/lotus/lotimpop.cxx | 2 |
3 files changed, 15 insertions, 6 deletions
diff --git a/sc/source/filter/inc/lotattr.hxx b/sc/source/filter/inc/lotattr.hxx index e3acb2c874ff..844da072c129 100644 --- a/sc/source/filter/inc/lotattr.hxx +++ b/sc/source/filter/inc/lotattr.hxx @@ -42,6 +42,7 @@ class ScPatternAttr; class SvxColorItem; class Color; class LotAttrTable; +class LOTUS_ROOT; namespace editeng { class SvxBorderLine; } @@ -68,7 +69,7 @@ class LotAttrCache { public: - LotAttrCache (); + LotAttrCache(LOTUS_ROOT* pLotRoot); ~LotAttrCache(); @@ -112,13 +113,14 @@ private: SvxColorItem* pWhite; Color* pColTab; boost::ptr_vector<ENTRY> aEntries; + + LOTUS_ROOT* mpLotusRoot; }; class LotAttrCol { public: - void SetAttr (const SCROW nRow, const ScPatternAttr&); void Apply (const SCCOL nCol, const SCTAB nTab ); @@ -138,6 +140,7 @@ private: class LotAttrTable { public: + LotAttrTable(LOTUS_ROOT* pLotRoot); void SetAttr( const SCCOL nColFirst, const SCCOL nColLast, const SCROW nRow, const LotAttrWK3& ); diff --git a/sc/source/filter/lotus/lotattr.cxx b/sc/source/filter/lotus/lotattr.cxx index 7f5f3ab2447c..5606b10a6d1c 100644 --- a/sc/source/filter/lotus/lotattr.cxx +++ b/sc/source/filter/lotus/lotattr.cxx @@ -58,9 +58,10 @@ LotAttrCache::ENTRY::~ENTRY () delete pPattAttr; } -LotAttrCache::LotAttrCache () +LotAttrCache::LotAttrCache (LOTUS_ROOT* pLotRoot): + mpLotusRoot(pLotRoot) { - pDocPool = pLotusRoot->pDoc->GetPool(); + pDocPool = mpLotusRoot->pDoc->GetPool(); pColTab = new Color [ 8 ]; pColTab[ 0 ] = Color( COL_WHITE ); @@ -115,7 +116,7 @@ const ScPatternAttr& LotAttrCache::GetPattAttr( const LotAttrWK3& rAttr ) pAkt->nHash0 = nRefHash; - pLotusRoot->pFontBuff->Fill( rAttr.nFont, rItemSet ); + mpLotusRoot->pFontBuff->Fill( rAttr.nFont, rItemSet ); sal_uInt8 nLine = rAttr.nLineStyle; if( nLine ) @@ -245,6 +246,11 @@ void LotAttrCol::Apply( const SCCOL nColNum, const SCTAB nTabNum ) } } +LotAttrTable::LotAttrTable(LOTUS_ROOT* pLotRoot): + aAttrCache(pLotRoot) +{ +} + void LotAttrTable::SetAttr( const SCCOL nColFirst, const SCCOL nColLast, const SCROW nRow, const LotAttrWK3& rAttr ) { diff --git a/sc/source/filter/lotus/lotimpop.cxx b/sc/source/filter/lotus/lotimpop.cxx index 4eda7c531892..a35892de79df 100644 --- a/sc/source/filter/lotus/lotimpop.cxx +++ b/sc/source/filter/lotus/lotimpop.cxx @@ -56,7 +56,7 @@ LOTUS_ROOT::LOTUS_ROOT( ScDocument* pDocP, CharSet eQ ) eActType( Lotus_X), pRngNmBffWK3( new RangeNameBufferWK3), pFontBuff( new LotusFontBuffer), - pAttrTable( new LotAttrTable) + pAttrTable( new LotAttrTable(this)) { } |