Sophie

Sophie

distrib > Mandriva > 2010.2 > i586 > media > contrib-release-src > by-pkgid > af98abfd9492b11947009fa207393390 > files > 6

abrt-1.1.1-1mdv2010.1.src.rpm

From ac868ebf02d00cae0f8bad3e1bd676cb8d2be16b Mon Sep 17 00:00:00 2001
From: Frederic Crozat <fcrozat@mandriva.com>
Date: Tue, 11 May 2010 19:19:30 +0200
Subject: [PATCH] parse /etc/mandriva-release

---
 lib/Utils/DebugDump.cpp     |    2 +-
 lib/Utils/parse_release.cpp |   13 +++++++++++++
 2 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/lib/Utils/DebugDump.cpp b/lib/Utils/DebugDump.cpp
index 2d8da1a..9713e70 100644
--- a/lib/Utils/DebugDump.cpp
+++ b/lib/Utils/DebugDump.cpp
@@ -330,7 +330,7 @@ void CDebugDump::Create(const char *pDir, uid_t uid)
         SaveText(FILENAME_KERNEL, buf.release);
         SaveText(FILENAME_ARCHITECTURE, buf.machine);
         std::string release;
-        LoadTextFile("/etc/redhat-release", release);
+        LoadTextFile("/etc/mandriva-release", release);
         const char *release_ptr = release.c_str();
         unsigned len_1st_str = strchrnul(release_ptr, '\n') - release_ptr;
         release.erase(len_1st_str); /* usually simply removes trailing '\n' */
diff --git a/lib/Utils/parse_release.cpp b/lib/Utils/parse_release.cpp
index 4f7d76e..74b22bf 100644
--- a/lib/Utils/parse_release.cpp
+++ b/lib/Utils/parse_release.cpp
@@ -41,6 +41,19 @@ void parse_release(const char *pRelease, string& pProduct, string& pVersion)
         pProduct = "Red Hat Enterprise Linux ";
     }
 
+    if (strstr(pRelease, "Cooker"))
+    {
+	pProduct = "Mandriva Linux";
+	pVersion = "Cooker";
+        VERB3 log("%s: version:'%s' product:'%s'", __func__, pVersion.c_str(), pProduct.c_str());
+        return;
+    }
+
+    if (strstr(pRelease, "Mandriva"))
+    {
+        pProduct = "Mandriva Linux";
+    }
+
     const char *release = strstr(pRelease, "release");
     const char *space = release ? strchr(release, ' ') : NULL;
 
-- 
1.7.1