[bliss] Apply bug fix and performance enhancement patch from Thomas Rehn.

Jerry James jjames at fedoraproject.org
Fri Mar 16 17:08:40 UTC 2012


commit 6fa0d0bb456bf3f48dcee2a3d10110f37d88159a
Author: Jerry James <loganjerry at gmail.com>
Date:   Fri Mar 16 11:08:29 2012 -0600

    Apply bug fix and performance enhancement patch from Thomas Rehn.

 bliss-rehn.patch |   74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 bliss.spec       |    8 +++++-
 2 files changed, 81 insertions(+), 1 deletions(-)
---
diff --git a/bliss-rehn.patch b/bliss-rehn.patch
new file mode 100644
index 0000000..4854338
--- /dev/null
+++ b/bliss-rehn.patch
@@ -0,0 +1,74 @@
+--- ./graph.cc.orig	2012-03-16 10:55:45.139266642 -0600
++++ ./graph.cc	2012-03-16 10:57:42.429090440 -0600
+@@ -597,16 +597,6 @@ public:
+ };
+ 
+ 
+-
+-
+-typedef struct {
+-  unsigned int splitting_element;
+-  unsigned int certificate_index;
+-  unsigned int subcertificate_length;
+-  UintSeqHash eqref_hash;
+-} PathInfo;
+-
+-
+ bool
+ AbstractGraph::search(const bool canonical, Stats& stats)
+ {
+@@ -753,7 +743,6 @@ AbstractGraph::search(const bool canonic
+   initialize_certificate();
+ 
+   std::vector<TreeNode> search_stack;
+-  std::vector<PathInfo> first_path_info;
+   std::vector<PathInfo> best_path_info;
+ 
+   search_stack.clear();
+@@ -5466,7 +5455,7 @@ Graph::nucr_find_first_component(const u
+   component.clear();
+   component_elements = 0;
+   sh_return = 0;
+-  unsigned int sh_first  = 0;
++  unsigned int sh_first  = 1 << 31;
+   unsigned int sh_size   = 0;
+   unsigned int sh_nuconn = 0;
+ 
+--- ./graph.hh.orig	2012-03-16 10:55:45.153266622 -0600
++++ ./graph.hh	2012-03-16 11:00:26.851843429 -0600
+@@ -109,9 +109,12 @@ public:
+   unsigned long int get_max_level() const {return max_level;}
+ };
+ 
+-
+-
+-
++typedef struct {
++  unsigned int splitting_element;
++  unsigned int certificate_index;
++  unsigned int subcertificate_length;
++  UintSeqHash eqref_hash;
++} PathInfo;
+ 
+ 
+ /**
+@@ -355,7 +358,7 @@ protected:
+    */
+   unsigned int cr_component_elements;
+ 
+-
++  std::vector<PathInfo> first_path_info;
+ 
+ 
+ public:
+@@ -508,6 +511,10 @@ public:
+     opt_use_long_prune = active;
+   }
+ 
++  /**
++   * Get an information vector about the first path.
++   */
++  std::vector<PathInfo> get_first_path_info() { return first_path_info; }
+ };
+ 
+ 
diff --git a/bliss.spec b/bliss.spec
index 8979037..5f80530 100644
--- a/bliss.spec
+++ b/bliss.spec
@@ -1,6 +1,6 @@
 Name:           bliss
 Version:        0.72
-Release:        3%{?dist}
+Release:        4%{?dist}
 Summary:        Compute automorphism groups and canonical labelings of graphs
 
 Group:          Applications/Engineering
@@ -12,6 +12,9 @@ Source0:        http://www.tcs.hut.fi/Software/bliss/%{name}-%{version}.zip
 Source1:        bliss.1
 # Sent upstream 28 Oct 2011.  Don't call exit() in library code.
 Patch0:         bliss-error.patch
+# Patch from Thomas Rehn, also sent upstream.  Fix one bug and add one
+# performance enhancement.
+Patch1:         bliss-rehn.patch
 
 BuildRequires:  doxygen
 BuildRequires:  gmp-devel
@@ -100,6 +103,9 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1
 %{_libdir}/libbliss.so.*
 
 %changelog
+* Fri Mar 16 2012 Jerry James <loganjerry at gmail.com> - 0.72-4
+- Apply bug fix and performance enhancement patch from Thomas Rehn
+
 * Fri Jan  6 2012 Jerry James <loganjerry at gmail.com> - 0.72-3
 - Rebuild for GCC 4.7.
 


More information about the scm-commits mailing list