[Libreoffice-commits] core.git: extensions/source sc/source sd/source vcl/unx

Michael Stahl mstahl at redhat.com
Tue Nov 29 09:50:19 UTC 2016


 extensions/source/scanner/sanedlg.cxx    |    6 ++++--
 sc/source/core/tool/token.cxx            |   10 ++++++----
 sd/source/filter/ppt/pptin.cxx           |    6 ++++--
 sd/source/ui/view/drawview.cxx           |    6 ++++--
 vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx |    2 +-
 5 files changed, 19 insertions(+), 11 deletions(-)

New commits:
commit d36ca60964cf20b738ead1020c41c2f586a16660
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Nov 28 15:20:48 2016 +0100

    extensions,sc,sd,vcl: de-obfuscate assignments in conditions to help GCC
    
    GCC 6.2.1 with -Og produces spurious -Werror=maybe-uninitialized
    on variables that are assigned in conditions; perhaps it's better to
    de-obfuscate the code if even GCC is confused about it.
    
    Change-Id: Ia2f8209df893a8e5659ca72f4cde3d7d847574e1
    Reviewed-on: https://gerrit.libreoffice.org/31332
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Michael Stahl <mstahl at redhat.com>

diff --git a/extensions/source/scanner/sanedlg.cxx b/extensions/source/scanner/sanedlg.cxx
index 1bf9ffa..cea597c 100644
--- a/extensions/source/scanner/sanedlg.cxx
+++ b/extensions/source/scanner/sanedlg.cxx
@@ -1470,8 +1470,10 @@ bool SaneDlg::SetAdjustedNumericalValue(
     double fValue,
     int nElement )
 {
-    int nOption;
-    if( ! Sane::IsSane() || ! mrSane.IsOpen() || ( nOption = mrSane.GetOptionByName( pOption ) ) == -1 )
+    if (! Sane::IsSane() || ! mrSane.IsOpen())
+        return false;
+    int const nOption(mrSane.GetOptionByName(pOption));
+    if (nOption == -1)
         return false;
 
     if( nElement < 0 || nElement >= mrSane.GetOptionElements( nOption ) )
diff --git a/sc/source/core/tool/token.cxx b/sc/source/core/tool/token.cxx
index 53f4dc4..88970ed 100644
--- a/sc/source/core/tool/token.cxx
+++ b/sc/source/core/tool/token.cxx
@@ -535,12 +535,14 @@ FormulaTokenRef extendRangeReference( FormulaToken & rTok1, FormulaToken & rTok2
         const ScAddress & rPos, bool bReuseDoubleRef )
 {
 
-    StackVar sv1, sv2;
+    StackVar sv1 = rTok1.GetType();
     // Doing a RangeOp with RefList is probably utter nonsense, but Xcl
     // supports it, so do we.
-    if (((sv1 = rTok1.GetType()) != svSingleRef && sv1 != svDoubleRef && sv1 != svRefList &&
-            sv1 != svExternalSingleRef && sv1 != svExternalDoubleRef ) ||
-        ((sv2 = rTok2.GetType()) != svSingleRef && sv2 != svDoubleRef && sv2 != svRefList))
+    if (sv1 != svSingleRef && sv1 != svDoubleRef && sv1 != svRefList
+         && sv1 != svExternalSingleRef && sv1 != svExternalDoubleRef)
+        return nullptr;
+    StackVar sv2 = rTok2.GetType();
+    if (sv2 != svSingleRef && sv2 != svDoubleRef && sv2 != svRefList)
         return nullptr;
 
     ScTokenRef xRes;
diff --git a/sd/source/filter/ppt/pptin.cxx b/sd/source/filter/ppt/pptin.cxx
index 78b5e27..304194b 100644
--- a/sd/source/filter/ppt/pptin.cxx
+++ b/sd/source/filter/ppt/pptin.cxx
@@ -725,10 +725,12 @@ bool ImplSdPPTImport::Import()
             }
         }
     }
-    SdPage* pMPage;
     sal_uInt16 i;
-    for ( i = 0; i < mpDoc->GetMasterPageCount() && ( (pMPage = static_cast<SdPage*>(mpDoc->GetMasterPage( i ))) != nullptr ); i++ )
+    for (i = 0; i < mpDoc->GetMasterPageCount(); ++i)
     {
+        SdPage *const pMPage(static_cast<SdPage*>(mpDoc->GetMasterPage(i)));
+        if (pMPage == nullptr)
+            break;
         SetPageNum( i, PPT_MASTERPAGE );
 
         // importing master page objects
diff --git a/sd/source/ui/view/drawview.cxx b/sd/source/ui/view/drawview.cxx
index 9292cf5..d91cc29 100644
--- a/sd/source/ui/view/drawview.cxx
+++ b/sd/source/ui/view/drawview.cxx
@@ -539,11 +539,13 @@ void DrawView::DeleteMarked()
             if( pObj && !pObj->IsEmptyPresObj() && pObj->GetUserCall() )
             {
                 pPage = static_cast< SdPage* >( pObj->GetPage() );
-                PresObjKind ePresObjKind;
-                if( pPage && ((ePresObjKind = pPage->GetPresObjKind(pObj)) != PRESOBJ_NONE))
+                if (pPage)
                 {
+                    PresObjKind ePresObjKind(pPage->GetPresObjKind(pObj));
                     switch( ePresObjKind )
                     {
+                    case PRESOBJ_NONE:
+                        continue; // ignore it
                     case PRESOBJ_GRAPHIC:
                     case PRESOBJ_OBJECT:
                     case PRESOBJ_CHART:
diff --git a/vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx b/vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx
index d4f8dfb..59dbb79 100644
--- a/vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx
+++ b/vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx
@@ -231,7 +231,7 @@ SalGtkFilePicker::SalGtkFilePicker( const uno::Reference< uno::XComponentContext
     gtk_tree_view_set_headers_visible (GTK_TREE_VIEW(m_pFilterView), false);
     gtk_tree_view_set_rules_hint (GTK_TREE_VIEW(m_pFilterView), true);
 
-    GtkCellRenderer *cell;
+    GtkCellRenderer *cell = nullptr;
 
     for (i = 0; i < 2; ++i)
     {


More information about the Libreoffice-commits mailing list