[smokegen] patch smoke generator invalid reads found by valgrind

Than Ngo than at fedoraproject.org
Tue Aug 2 12:53:53 UTC 2011


commit c53afe2b03cbe6bcb4111a5bcb7fc142e32d8dbc
Author: Than Ngo <than at redhat.com>
Date:   Tue Aug 2 14:55:28 2011 +0200

    patch smoke generator invalid reads found by valgrind

 smokegen-4.7.0-crash.patch |   13 +++++++++++++
 smokegen.spec              |    9 +++++++--
 2 files changed, 20 insertions(+), 2 deletions(-)
---
diff --git a/smokegen-4.7.0-crash.patch b/smokegen-4.7.0-crash.patch
new file mode 100644
index 0000000..5864da3
--- /dev/null
+++ b/smokegen-4.7.0-crash.patch
@@ -0,0 +1,13 @@
+diff -up smokegen-4.7.0/parser/type_compiler.cpp.orig smokegen-4.7.0/parser/type_compiler.cpp
+diff -up smokegen-4.7.0/type_compiler.cpp.orig smokegen-4.7.0/type_compiler.cpp
+--- smokegen-4.7.0/type_compiler.cpp.orig	2011-08-02 14:34:08.000000000 +0200
++++ smokegen-4.7.0/type_compiler.cpp	2011-08-02 14:34:34.000000000 +0200
+@@ -191,6 +191,8 @@ void TypeCompiler::visitParameterDeclara
+ 
+ void TypeCompiler::visitPtrOperator(PtrOperatorAST* node)
+ {
++    if ( ! m_session->token_stream ) return;
++    if ( ! token_text(m_session->token_stream->kind(node->op)) ) return;
+     if (token_text(m_session->token_stream->kind(node->op))[0] == '*') {
+         QPair<bool, bool> cv = m_visitor->parseCv(node->cv);
+         pointerDepth.append(cv.first);
diff --git a/smokegen.spec b/smokegen.spec
index a616f6c..461ffdf 100644
--- a/smokegen.spec
+++ b/smokegen.spec
@@ -1,12 +1,14 @@
 Name: smokegen
 Version: 4.7.0
-Release: 1%{?dist}
+Release: 2%{?dist}
 Summary: Smoke Generator
 
 Group: User Interface/Desktops	
 License: LGPLv2 and GPLv2+
 URL: http://www.kde.org
 Source0: ftp://ftp.kde.org/pub/kde/stable/%{version}/src/%{name}-%{version}.tar.bz2
+# fix smoke generator invalid reads found by valgrind
+Patch0: smokegen-4.7.0-crash.patch
 BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
 BuildRequires: cmake
@@ -34,7 +36,7 @@ applications for KDE 4.
 
 %prep
 %setup -q
-
+%patch0 -p1 -b .crash
 
 %build
 mkdir -p %{_target_platform}
@@ -71,6 +73,9 @@ rm -rf %{buildroot}
 %{_datadir}/smoke/
 
 %changelog
+* Tue Aug 02 2011 Than Ngo <than at redhat.com> - 4.7.0-2
+- patch smoke generator invalid reads found by valgrind
+
 * Tue Jul 26 2011 Than Ngo <than at redhat.com> - 4.7.0-1
 - 4.7.0
 


More information about the scm-commits mailing list