Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > 7e4a8eb1855d7ebf4b8b737f227a56db > files > 1

udisks-1.0.1-4.fc13.src.rpm

From 2b2fcf80841972b70ad695a5a1ed74487d4fd37a Mon Sep 17 00:00:00 2001
From: David Zeuthen <davidz@redhat.com>
Date: Wed, 19 May 2010 13:01:31 -0400
Subject: [PATCH] Update to latest LVM2 API

See

 http://lists.freedesktop.org/archives/devkit-devel/2010-April/000783.html
---
 configure.ac                       |    2 +-
 src/probers/udisks-lvm-pv-export.c |   30 ++++++++++--------------------
 2 files changed, 11 insertions(+), 21 deletions(-)

diff --git a/configure.ac b/configure.ac
index 469be5f..a9141bf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -170,7 +170,7 @@ AC_SUBST(DEVMAPPER_LIBS)
 have_lvm2=no
 AC_ARG_ENABLE(lvm2, AS_HELP_STRING([--disable-lvm2], [disable LVM2 support]))
 if test "x$enable_lvm2" != "xno"; then
-  PKG_CHECK_MODULES(LVM2, lvm2app >= 2.1,
+  PKG_CHECK_MODULES(LVM2, lvm2app >= 2.2,
                     [AC_DEFINE(HAVE_LVM2, 1, [Define if LVM2 is available]) have_lvm2=yes],
                     have_lvm2=no)
   AC_SUBST(LVM2_CFLAGS)
diff --git a/src/probers/udisks-lvm-pv-export.c b/src/probers/udisks-lvm-pv-export.c
index 5675fb8..ee6d8ed 100644
--- a/src/probers/udisks-lvm-pv-export.c
+++ b/src/probers/udisks-lvm-pv-export.c
@@ -47,7 +47,7 @@ find_vg_for_pv_uuid (lvm_t        lvm_ctx,
               struct lvm_pv_list *pv_list;
               dm_list_iterate_items (pv_list, pvs)
                 {
-                  char *uuid;
+                  const char *uuid;
                   pv_t pv = pv_list->pv;
 
                   uuid = lvm_pv_get_uuid (pv);
@@ -58,10 +58,8 @@ find_vg_for_pv_uuid (lvm_t        lvm_ctx,
                           if (out_pv != NULL)
                             *out_pv = pv;
                           ret = vg;
-                          dm_free (uuid);
                           goto out;
                         }
-                      dm_free (uuid);
                     }
                 }
             }
@@ -79,12 +77,12 @@ find_vg_for_pv_uuid (lvm_t        lvm_ctx,
 static void
 print_vg (vg_t vg)
 {
-  char *s;
+  const char *s;
   struct dm_list *pvs;
   struct dm_list *lvs;
 
-  s = lvm_vg_get_uuid (vg); g_print ("UDISKS_LVM2_PV_VG_UUID=%s\n", s); dm_free (s);
-  s = lvm_vg_get_name (vg); g_print ("UDISKS_LVM2_PV_VG_NAME=%s\n", s); dm_free (s);
+  s = lvm_vg_get_uuid (vg); g_print ("UDISKS_LVM2_PV_VG_UUID=%s\n", s);
+  s = lvm_vg_get_name (vg); g_print ("UDISKS_LVM2_PV_VG_NAME=%s\n", s);
   g_print ("UDISKS_LVM2_PV_VG_SIZE=%" G_GUINT64_FORMAT "\n", lvm_vg_get_size (vg));
   g_print ("UDISKS_LVM2_PV_VG_FREE_SIZE=%" G_GUINT64_FORMAT "\n", lvm_vg_get_free_size (vg));
   g_print ("UDISKS_LVM2_PV_VG_EXTENT_SIZE=%" G_GUINT64_FORMAT "\n", lvm_vg_get_extent_size (vg));
@@ -117,17 +115,14 @@ print_vg (vg_t vg)
       str = g_string_new (NULL);
       dm_list_iterate_items (pv_list, pvs)
         {
-          char *uuid;
+          const char *uuid;
           guint64 size;
           guint64 free_size;
           pv_t pv = pv_list->pv;
 
           uuid = lvm_pv_get_uuid (pv);
           if (uuid != NULL)
-            {
-              g_string_append_printf (str, "uuid=%s", uuid);
-              dm_free (uuid);
-            }
+            g_string_append_printf (str, "uuid=%s", uuid);
           size = lvm_pv_get_size (pv);
           g_string_append_printf (str, ";size=%" G_GUINT64_FORMAT, size);
           free_size = lvm_pv_get_free (pv);
@@ -173,8 +168,8 @@ print_vg (vg_t vg)
       str = g_string_new (NULL);
       dm_list_iterate_items (lv_list, lvs)
         {
-          char *uuid;
-          char *name;
+          const char *uuid;
+          const char *name;
           gboolean is_active;
           guint64 size;
           lv_t lv = lv_list->lv;
@@ -195,11 +190,6 @@ print_vg (vg_t vg)
               g_string_append_printf (str, "active=%d", is_active);
               g_string_append_c (str, ' ');
             }
-
-          if (uuid != NULL)
-            dm_free (uuid);
-          if (name != NULL)
-            dm_free (name);
         }
       g_print ("UDISKS_LVM2_PV_VG_LV_LIST=%s\n", str->str);
       g_string_free (str, TRUE);
@@ -212,9 +202,9 @@ print_vg (vg_t vg)
 static void
 print_pv (pv_t pv)
 {
-  char *s;
+  const char *s;
 
-  s = lvm_pv_get_uuid (pv); g_print ("UDISKS_LVM2_PV_UUID=%s\n", s); dm_free (s);
+  s = lvm_pv_get_uuid (pv); g_print ("UDISKS_LVM2_PV_UUID=%s\n", s);
   g_print ("UDISKS_LVM2_PV_NUM_MDA=%" G_GUINT64_FORMAT "\n", lvm_pv_get_mda_count (pv));
 
   /* TODO: ask for more API in liblvm - pvdisplay(8) suggests more information
-- 
1.7.0.1