diff options
Diffstat (limited to 'x11-libs/qwt/files/qwt-6.0.2-invalid-read.patch')
-rw-r--r-- | x11-libs/qwt/files/qwt-6.0.2-invalid-read.patch | 250 |
1 files changed, 250 insertions, 0 deletions
diff --git a/x11-libs/qwt/files/qwt-6.0.2-invalid-read.patch b/x11-libs/qwt/files/qwt-6.0.2-invalid-read.patch new file mode 100644 index 0000000..a225350 --- /dev/null +++ b/x11-libs/qwt/files/qwt-6.0.2-invalid-read.patch @@ -0,0 +1,250 @@ +--- qwt-6.0.2-orig/textengines/mathml/qwt_mml_document.cpp 2012-12-01 00:22:46.752106265 +1100 ++++ qwt-6.0.2/textengines/mathml/qwt_mml_document.cpp 2013-01-31 14:29:30.590197611 +1100 +@@ -4421,7 +4421,10 @@ + if ( ok ) + return value; + else +- qWarning( "Could not convert %s to form", value_str.toLatin1().data() ); ++ { ++ QByteArray value_str_ba = value_str.toLatin1(); ++ qWarning( "Could not convert %s to form", value_str_ba.data() ); ++ } + + } + +@@ -4658,7 +4661,10 @@ + continue; + } + else +- qWarning( "MmlMtableNode::layoutSymbol(): could not parse value %s%%", value.toLatin1().data() ); ++ { ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "MmlMtableNode::layoutSymbol(): could not parse value %s%%", value_ba.data() ); ++ } + } + + // Relatively sized column, but we failed to parse the factor. Treat is like an auto +@@ -5167,7 +5173,8 @@ + double factor = factor_str.toFloat( &float_ok ); + if ( !float_ok || factor < 0 ) + { +- qWarning( "MmlMpaddedNode::interpretSpacing(): could not parse \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "MmlMpaddedNode::interpretSpacing(): could not parse \"%s\"", value_ba.data() ); + return 0; + } + +@@ -5196,7 +5203,8 @@ + unit_size = QwtMmlNode::interpretSpacing( "1" + pseudo_unit, &unit_ok ); + if ( !unit_ok ) + { +- qWarning( "MmlMpaddedNode::interpretSpacing(): could not parse \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "MmlMpaddedNode::interpretSpacing(): could not parse \"%s\"", value_ba.data() ); + return 0; + } + } +@@ -5368,7 +5376,8 @@ + return ( int )( em * factor ); + else + { +- qWarning( "interpretSpacing(): could not parse \"%sem\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretSpacing(): could not parse \"%sem\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5384,7 +5393,8 @@ + return ( int )( ex * factor ); + else + { +- qWarning( "interpretSpacing(): could not parse \"%sex\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretSpacing(): could not parse \"%sex\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5406,7 +5416,8 @@ + } + else + { +- qWarning( "interpretSpacing(): could not parse \"%scm\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretSpacing(): could not parse \"%scm\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5428,7 +5439,8 @@ + } + else + { +- qWarning( "interpretSpacing(): could not parse \"%smm\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretSpacing(): could not parse \"%smm\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5450,7 +5462,8 @@ + } + else + { +- qWarning( "interpretSpacing(): could not parse \"%sin\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretSpacing(): could not parse \"%sin\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5466,7 +5479,8 @@ + return i; + else + { +- qWarning( "interpretSpacing(): could not parse \"%spx\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretSpacing(): could not parse \"%spx\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5478,7 +5492,8 @@ + if ( float_ok && i >= 0 ) + return i; + +- qWarning( "interpretSpacing(): could not parse \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretSpacing(): could not parse \"%s\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5503,7 +5518,8 @@ + return ( int )( base * factor / 100.0 ); + } + +- qWarning( "interpretPercentSpacing(): could not parse \"%s%%\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretPercentSpacing(): could not parse \"%s%%\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5528,7 +5544,8 @@ + return pt_size; + } + +- qWarning( "interpretPointSize(): could not parse \"%spt\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretPointSize(): could not parse \"%spt\"", value_ba.data() ); + if ( ok != 0 ) + *ok = false; + return 0; +@@ -5737,7 +5754,8 @@ + */ + static const QwtMmlOperSpec *searchOperSpecData( const QString &name ) + { +- const char *name_latin1 = name.toLatin1().data(); ++ QByteArray name_latin1_ba = name.toLatin1(); ++ const char *name_latin1 = name_latin1_ba.data(); + + // binary search + // establish invariant g_oper_spec_data[begin].name < name < g_oper_spec_data[end].name +@@ -5789,7 +5807,8 @@ + if ( spec == 0 ) + continue; + +- const char *name_latin1 = name.toLatin1().data(); ++ QByteArray name_ba = name.toLatin1(); ++ const char *name_latin1 = name_ba.data(); + + // backtrack to the first instance of name + while ( spec > g_oper_spec_data && qstrcmp( ( spec - 1 )->name, name_latin1 ) == 0 ) +@@ -5918,7 +5937,8 @@ + if ( ok != 0 ) + *ok = false; + +- qWarning( "interpretMathVariant(): could not parse value: \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretMathVariant(): could not parse value: \"%s\"", value_ba.data() ); + + return QwtMml::NormalMV; + } +@@ -5938,7 +5958,8 @@ + if ( ok != 0 ) + *ok = false; + +- qWarning( "interpretForm(): could not parse value \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretForm(): could not parse value \"%s\"", value_ba.data() ); + return QwtMml::InfixForm; + } + +@@ -5959,7 +5980,8 @@ + if ( ok != 0 ) + *ok = false; + +- qWarning( "interpretColAlign(): could not parse value \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretColAlign(): could not parse value \"%s\"", value_ba.data() ); + return QwtMml::ColAlignCenter; + } + +@@ -5984,7 +6006,8 @@ + if ( ok != 0 ) + *ok = false; + +- qWarning( "interpretRowAlign(): could not parse value \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretRowAlign(): could not parse value \"%s\"", value_ba.data() ); + return QwtMml::RowAlignAxis; + } + +@@ -6018,7 +6041,8 @@ + if ( ok != 0 ) + *ok = false; + +- qWarning( "interpretFrameType(): could not parse value \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretFrameType(): could not parse value \"%s\"", value_ba.data() ); + return QwtMml::FrameNone; + } + +@@ -6030,7 +6054,8 @@ + QStringList l = value_list.split( ' ' ); + if ( l.count() != 2 ) + { +- qWarning( "interpretFrameSpacing: could not parse value \"%s\"", value_list.toLatin1().data() ); ++ QByteArray value_list_ba = value_list.toLatin1(); ++ qWarning( "interpretFrameSpacing: could not parse value \"%s\"", value_list_ba.data() ); + if ( ok != 0 ) + *ok = false; + return QwtMml::FrameSpacing( ( int )( 0.4 * em ), ( int )( 0.5 * ex ) ); +@@ -6089,7 +6114,10 @@ + else if ( value == "bold" ) + fn.setBold( true ); + else +- qWarning( "interpretDepreciatedFontAttr(): could not parse fontweight \"%s\"", value.toLatin1().data() ); ++ { ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretDepreciatedFontAttr(): could not parse fontweight \"%s\"", value_ba.data() ); ++ } + } + + if ( font_attr.contains( "fontstyle" ) ) +@@ -6100,7 +6128,10 @@ + else if ( value == "italic" ) + fn.setItalic( true ); + else +- qWarning( "interpretDepreciatedFontAttr(): could not parse fontstyle \"%s\"", value.toLatin1().data() ); ++ { ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretDepreciatedFontAttr(): could not parse fontstyle \"%s\"", value_ba.data() ); ++ } + } + + if ( font_attr.contains( "fontfamily" ) ) +@@ -6150,7 +6181,8 @@ + + if ( ok != 0 ) + *ok = false; +- qWarning( "interpretMathSize(): could not parse mathsize \"%s\"", value.toLatin1().data() ); ++ QByteArray value_ba = value.toLatin1(); ++ qWarning( "interpretMathSize(): could not parse mathsize \"%s\"", value_ba.data() ); + return fn; + } + |