patches/GParted-01-solaris.diff
author marklo
Mon, 14 Sep 2009 17:22:00 +0000
changeset 16560 7ea8addc0282
child 16794 4ca993a3ff31
permissions -rw-r--r--
Add GParted 0.4.5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
16560
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     1
diff -ru ../gparted-0.4.5/compose/ucompose.hpp ./compose/ucompose.hpp
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     2
--- ../gparted-0.4.5/compose/ucompose.hpp	2009-04-18 13:38:05.000000000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     3
+++ ./compose/ucompose.hpp	2009-08-28 13:37:02.167527000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     4
@@ -127,7 +127,11 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     5
    
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     6
     return Glib::convert(std::string(reinterpret_cast<const char *>(str.data()),
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     7
 				     str.size() * sizeof(wchar_t)),
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     8
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
     9
+			 "UTF-8", "UCS-4LE");
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    10
+#else
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    11
 			 "UTF-8", "WCHAR_T");
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    12
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    13
   }
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    14
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    15
   // specialisations for the common string types
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    16
diff -ru ../gparted-0.4.5/configure ./configure
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    17
--- ../gparted-0.4.5/configure	2009-05-08 09:05:43.000000000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    18
+++ ./configure	2009-06-12 10:12:27.781410000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    19
@@ -22031,6 +22031,10 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    20
 #include <stdio.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    21
 #include <parted/parted.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    22
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    23
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    24
+char *program_name = "test";
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    25
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    26
+
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    27
 int main ()
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    28
 {
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    29
 	int min_major ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    30
diff -ru ../gparted-0.4.5/configure.in ./configure.in
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    31
--- ../gparted-0.4.5/configure.in	2009-05-08 08:50:41.000000000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    32
+++ ./configure.in	2009-06-12 10:12:05.631528000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    33
@@ -49,6 +49,10 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    34
 #include <stdio.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    35
 #include <parted/parted.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    36
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    37
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    38
+char *program_name = "test";
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    39
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    40
+
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    41
 int main ()
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    42
 {
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    43
 	int min_major ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    44
diff -ru ../gparted-0.4.5/gparted.desktop ./gparted.desktop
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    45
--- ../gparted-0.4.5/gparted.desktop	2009-05-08 09:05:53.000000000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    46
+++ ./gparted.desktop	2009-06-12 10:44:28.470185000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    47
@@ -58,7 +58,7 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    48
 Comment[zh_CN]=创建、重新组织或删除分区
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    49
 Comment[zh_HK]=建立、編輯或刪除分割區
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    50
 Comment[zh_TW]=建立、編輯或刪除分割區
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    51
-Exec=gksu /usr/local/sbin/gparted %f
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    52
+Exec=gksu /usr/sbin/gparted %f
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    53
 Icon=gparted
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    54
 Terminal=false
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    55
 Type=Application
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    56
diff -ru ../gparted-0.4.5/src/GParted_Core.cc ./src/GParted_Core.cc
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    57
--- ../gparted-0.4.5/src/GParted_Core.cc	2009-05-02 09:59:49.000000000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    58
+++ ./src/GParted_Core.cc	2009-06-10 15:19:53.573670000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    59
@@ -847,7 +847,11 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    60
 	strncpy(magic, buf+0, 6) ;  magic[6] = '\0' ; //set and terminate string
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    61
 	ped_device_close( lp_device );
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    62
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    63
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    64
+	if (strncmp("LUKS\xBA\xBE", magic, 6) == 0)
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    65
+#else
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    66
 	if ( Glib::ustring( magic ) == "LUKS\xBA\xBE" )
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    67
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    68
 	{
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    69
 		temp = _( "Linux Unified Key Setup encryption is not yet supported." ) ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    70
 		temp += "\n" ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    71
@@ -911,7 +915,16 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    72
 	ped_geometry_read( & lp_partition ->geom, buf, 128, 1 ) ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    73
 	ped_device_close( lp_device );
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    74
 	
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    75
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    76
+	/*
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    77
+	 * On Solaris, the Glib::ustring causes this message:
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    78
+	 * GLib-CRITICAL **: file gconvert.c:
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    79
+	 *    line 734: assertion `str != NULL' failed
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    80
+	 */
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    81
+	if (strncmp("ReIsEr4", buf, 7) == 0)
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    82
+#else
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    83
 	if ( Glib::ustring( buf ) == "ReIsEr4" )
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    84
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    85
 		return GParted::FS_REISER4 ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    86
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    87
 	//lvm2
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    88
@@ -925,8 +938,13 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    89
 	strncpy(magic2, buf+24, 4) ; magic2[4] = '\0' ; //set and terminate string
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    90
 	ped_device_close( lp_device );
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    91
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    92
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    93
+	if (strncmp("LABELONE", magic1, 8) == 0
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    94
+	    && strncmp("LVM2", magic2, 4) == 0)
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    95
+#else
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    96
 	if (    Glib::ustring( magic1 ) == "LABELONE"
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    97
 		 && Glib::ustring( magic2 ) == "LVM2" )
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    98
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
    99
 	{
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   100
 		temp = _( "Logical Volume Management is not yet supported." ) ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   101
 		temp += "\n" ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   102
@@ -949,7 +967,11 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   103
 	strncpy(magic, buf_btrfs+64, BTRFS_SIGNATURE .size()) ;  magic[BTRFS_SIGNATURE .size()] = '\0' ; //set and terminate string
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   104
 	ped_device_close( lp_device ) ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   105
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   106
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   107
+	if (strncmp("_BHRfS_M", magic, 8) == 0)
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   108
+#else
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   109
 	if ( magic == BTRFS_SIGNATURE )
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   110
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   111
 	{
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   112
 		temp = _( "BTRFS is not yet supported." ) ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   113
 		temp += "\n" ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   114
diff -ru ../gparted-0.4.5/src/Utils.cc ./src/Utils.cc
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   115
--- ../gparted-0.4.5/src/Utils.cc	2009-04-19 11:05:13.000000000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   116
+++ ./src/Utils.cc	2009-06-10 15:02:38.660042000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   117
@@ -19,6 +19,7 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   118
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   119
 #include <sstream>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   120
 #include <iomanip>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   121
+#include <unistd.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   122
 #include <regex.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   123
 #include <locale.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   124
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   125
diff -ru ../gparted-0.4.5/src/Win_GParted.cc ./src/Win_GParted.cc
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   126
--- ../gparted-0.4.5/src/Win_GParted.cc	2009-04-19 11:05:13.000000000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   127
+++ ./src/Win_GParted.cc	2009-06-10 15:04:57.634572000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   128
@@ -1690,9 +1690,14 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   129
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   130
 	*succes = true ; 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   131
 	for ( unsigned int t = 0 ; t < selected_partition .get_mountpoints() .size() ; t++ )
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   132
-		if ( std::count( mountpoints .begin(),
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   133
+	{
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   134
+		size_t n = 0;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   135
+
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   136
+		std::count( mountpoints .begin(),
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   137
 				 mountpoints .end(),
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   138
-				 selected_partition .get_mountpoints()[ t ] ) <= 1 ) 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   139
+				 selected_partition .get_mountpoints()[ t ],
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   140
+				 n );
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   141
+		if ( n <= 1 ) 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   142
 		{
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   143
 			if ( Utils::execute_command( "umount -v \"" + selected_partition .get_mountpoints()[ t ] + "\"",
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   144
 						     dummy,
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   145
@@ -1704,6 +1709,7 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   146
 		}
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   147
 		else
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   148
 			failed_mountpoints .push_back( selected_partition .get_mountpoints()[ t ] ) ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   149
+	}
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   150
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   151
 	
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   152
 	if ( *succes && failed_mountpoints .size() )
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   153
diff -ru ../gparted-0.4.5/src/main.cc ./src/main.cc
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   154
--- ../gparted-0.4.5/src/main.cc	2009-04-18 13:38:05.000000000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   155
+++ ./src/main.cc	2009-06-12 10:38:31.131138000 -0700
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   156
@@ -20,8 +20,16 @@
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   157
 #include <gtkmm/messagedialog.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   158
 #include <gtkmm/main.h>
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   159
 
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   160
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   161
+char *program_name;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   162
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   163
+
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   164
 int main( int argc, char *argv[] )
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   165
 {
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   166
+#ifdef __sun
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   167
+	program_name = argv[0];
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   168
+#endif
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   169
+
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   170
 	//initialize thread system
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   171
 	Glib::thread_init() ;
7ea8addc0282 Add GParted 0.4.5
marklo
parents:
diff changeset
   172