[mediatomb] Build fixes for gcc-4.7

rmattes rmattes at fedoraproject.org
Sat Jan 14 17:29:19 UTC 2012


commit b96e84102467db916439169c5f1953cb8ce7c76f
Author: Rich Mattes <richmattes at gmail.com>
Date:   Sat Jan 14 12:27:03 2012 -0500

    Build fixes for gcc-4.7

 mediatomb-0.12.1.gcc47.patch |  117 ++++++++++++++++++++++++++++++++++++++++++
 mediatomb.spec               |    3 +
 2 files changed, 120 insertions(+), 0 deletions(-)
---
diff --git a/mediatomb-0.12.1.gcc47.patch b/mediatomb-0.12.1.gcc47.patch
new file mode 100644
index 0000000..9d6149f
--- /dev/null
+++ b/mediatomb-0.12.1.gcc47.patch
@@ -0,0 +1,117 @@
+diff -up ./src/hash/dbo_hash.h.gcc47 ./src/hash/dbo_hash.h
+--- ./src/hash/dbo_hash.h.gcc47	2012-01-14 11:55:22.520261056 -0500
++++ ./src/hash/dbo_hash.h	2012-01-14 12:01:48.965302982 -0500
+@@ -106,7 +106,7 @@ public:
+     inline bool remove(KT key)
+     {
+         struct dbo_hash_slot<KT, VT> *slot;
+-        if (! search(key, &slot))
++        if (! this->search(key, &slot))
+             return false;
+         slot->key = deletedKey;
+         slot->value->release();
+@@ -136,7 +136,7 @@ public:
+     inline void put(KT key, zmm::Ref<VT> value)
+     {
+         struct dbo_hash_slot<KT, VT> *slot;
+-        search(key, &slot);
++        this->search(key, &slot);
+         put(key, (hash_slot_t)slot, value);
+     }
+     void put(KT key, hash_slot_t destSlot, zmm::Ref<VT> value)
+@@ -162,7 +162,7 @@ public:
+     inline zmm::Ref<VT> get(KT key)
+     {
+         struct dbo_hash_slot<KT, VT> *slot;
+-        bool found = search(key, &slot);
++        bool found = this->search(key, &slot);
+         if (found)
+             return zmm::Ref<VT>(slot->value);
+         else
+@@ -174,7 +174,7 @@ public:
+     inline zmm::Ref<VT> get(KT key, hash_slot_t *destSlot)
+     {
+         struct dbo_hash_slot<KT, VT> **slot = (struct dbo_hash_slot<KT, VT> **)destSlot;
+-        bool found = search(key, slot);
++        bool found = this->search(key, slot);
+         if (found)
+             return zmm::Ref<VT>((*slot)->value);
+         else
+diff -up ./src/hash/dbr_hash.h.gcc47 ./src/hash/dbr_hash.h
+--- ./src/hash/dbr_hash.h.gcc47	2012-01-14 12:04:43.464643618 -0500
++++ ./src/hash/dbr_hash.h	2012-01-14 12:05:24.111120552 -0500
+@@ -124,7 +124,7 @@ public:
+     inline bool remove(KT key)
+     {
+         struct dbr_hash_slot<KT> *slot;
+-        if (! search(key, &slot))
++        if (! this->search(key, &slot))
+             return false;
+         slot->key = deletedKey;
+         int array_slot = slot->array_slot;
+@@ -134,7 +134,7 @@ public:
+             return true;
+         }
+         data_array[array_slot] = data_array[--this->count];
+-        if (! search(data_array[array_slot], &slot))
++        if (! this->search(data_array[array_slot], &slot))
+         {
+             log_debug("DBR-Hash-Error: (%d; array_slot=%d; count=%d)\n", data_array[array_slot], array_slot, this->count);
+             throw zmm::Exception(_("DBR-Hash-Error: key in data_array not found in hashtable"));
+@@ -146,7 +146,7 @@ public:
+     inline void put(KT key)
+     {
+         struct dbr_hash_slot<KT> *slot;
+-        if (! search(key, &slot))
++        if (! this->search(key, &slot))
+         {
+ #ifdef TOMBDEBUG
+             if (this->count >= realCapacity)
+@@ -194,7 +194,7 @@ public:
+     inline bool exists(KT key)
+     {
+         struct dbr_hash_slot<KT> *slot;
+-        return search(key, &slot);
++        return this->search(key, &slot);
+     }
+     
+     /*
+diff -up ./src/hash/dso_hash.h.gcc47 ./src/hash/dso_hash.h
+--- ./src/hash/dso_hash.h.gcc47	2012-01-14 12:13:50.755582375 -0500
++++ ./src/hash/dso_hash.h	2012-01-14 12:14:42.511463035 -0500
+@@ -100,7 +100,7 @@ public:
+     inline bool remove(zmm::String key)
+     {
+         struct dso_hash_slot<VT> *slot;
+-        if (! search(key, &slot))
++        if (! this->search(key, &slot))
+             return false;
+         slot->key->release();
+         slot->value->release();
+@@ -112,7 +112,7 @@ public:
+     inline void put(zmm::String key, zmm::Ref<VT> value)
+     {
+         struct dso_hash_slot<VT> *slot;
+-        search(key, &slot);
++        this->search(key, &slot);
+         put(key, (hash_slot_t)slot, value);
+     }
+     void put(zmm::String key, hash_slot_t destSlot, zmm::Ref<VT> value)
+@@ -141,7 +141,7 @@ public:
+     inline zmm::Ref<VT> get(zmm::String key)
+     {
+         struct dso_hash_slot<VT> *slot;
+-        bool found = search(key, &slot);
++        bool found = this->search(key, &slot);
+         if (found)
+             return zmm::Ref<VT>(slot->value);
+         else
+@@ -153,7 +153,7 @@ public:
+     inline zmm::Ref<VT> get(zmm::String key, hash_slot_t *destSlot)
+     {
+         struct dso_hash_slot<VT> **slot = (struct dso_hash_slot<VT> **)destSlot;
+-        bool found = search(key, slot);
++        bool found = this->search(key, slot);
+         if (found)
+             return zmm::Ref<VT>((*slot)->value);
+         else
diff --git a/mediatomb.spec b/mediatomb.spec
index a303a87..560f5b3 100644
--- a/mediatomb.spec
+++ b/mediatomb.spec
@@ -24,6 +24,8 @@ Patch6: mediatomb-0.12.1.flacart.patch
 Patch7: mediatomb-0.12.1.flacart.config.patch
 # Fix youtube support.  RHBZ#747023, upstream bug http://sourceforge.net/tracker/?func=detail&aid=3382320&group_id=129766&atid=715780
 Patch8: mediatomb-0.12.1.fixyoutube.patch
+# Fix for gcc 4.7 build errors
+Patch9: mediatomb-0.12.1.gcc47.patch
 
 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 
 BuildRequires: automake
@@ -64,6 +66,7 @@ be found on http://www.upnp.org/.
 %patch6 -p0
 %patch7 -p1
 %patch8 -p3
+%patch9 -p0
 
 %build
 # Patches affect configure.ac scripts, need to autoreconf


More information about the scm-commits mailing list