File always_print_geom.diff of Package parted

Index: parted/parted.c
===================================================================
--- parted/parted.c.orig	2010-07-08 13:29:24.000000000 +0200
+++ parted/parted.c	2010-07-08 13:29:28.000000000 +0200
@@ -1437,8 +1437,22 @@ do_print (PedDevice** dev)
         wchar_t*        table_rendered;
 
         disk = ped_disk_new (*dev);
-        if (!disk)
+        if (!disk) {
+            printf (_("Sector size (logical/physical): %lldB/%lldB\n"),
+                    (*dev)->sector_size, (*dev)->phys_sector_size);
+            if (ped_unit_get_default () == PED_UNIT_CHS ||
+                    ped_unit_get_default () == PED_UNIT_CYLINDER) {
+                PedCHSGeometry* chs = &(*dev)->bios_geom;
+                char* cyl_size = ped_unit_format_custom (*dev,
+                        chs->heads * chs->sectors,
+                        PED_UNIT_KILOBYTE);
+                printf (_("BIOS cylinder,head,sector geometry: %d,%d,%d.  "
+                          "Each cylinder is %s.\n"),
+                        chs->cylinders, chs->heads, chs->sectors, cyl_size);
+                free (cyl_size);
+            }
                 goto error;
+        }
 
         if (ped_disk_is_flag_available(disk, PED_DISK_CYLINDER_ALIGNMENT))
                 if (!ped_disk_set_flag(disk, PED_DISK_CYLINDER_ALIGNMENT,
openSUSE Build Service is sponsored by