[evolution-patches] Trivial patch to add const to camel



Hi,

Attached is a trivial patch to liberally add the "const" keyword, and
change char* into char[], to reduce the number of startup relocations
performed by camel.

Ross
-- 
Ross Burton                                 mail: ross burtonini com
                                          jabber: ross burtonini com
                                     www: http://www.burtonini.com./
 PGP Fingerprint: 1A21 F5B0 D8D0 CFE3 81D4 E25A 2D09 E447 D0B4 33DF

Index: camel/broken-date-parser.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/broken-date-parser.c,v
retrieving revision 1.14
diff -u -r1.14 broken-date-parser.c
--- camel/broken-date-parser.c	2 Dec 2004 08:03:29 -0000	1.14
+++ camel/broken-date-parser.c	22 Apr 2005 16:04:31 -0000
@@ -54,7 +54,7 @@
 #define DATE_TOKEN_NON_TIMEZONE_NUMERIC (1 << 6)
 #define DATE_TOKEN_HAS_SIGN             (1 << 7)
 
-static unsigned char datetok_table[256] = {
+static const unsigned char datetok_table[256] = {
         128,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,
         111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,
         111,111,111,111,111,111,111,111, 79, 79,111,175,111,175,111,111,
@@ -74,8 +74,8 @@
 };
 
 /* hrm, is there a library for this shit? */
-static struct {
-	char *name;
+static const struct {
+	char name[4];
 	int offset;
 } tz_offsets [] = {
 	{ "UT", 0 },
@@ -95,12 +95,12 @@
 	{ "Y", 1200 },
 };
 
-static char *tm_months[] = {
+static const char tm_months[][4] = {
 	"Jan", "Feb", "Mar", "Apr", "May", "Jun",
 	"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
 };
 
-static char *tm_days[] = {
+static const char tm_days[][4] = {
 	"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"
 };
 
@@ -506,7 +506,7 @@
 			datetok_table[i] |= DATE_TOKEN_HAS_SIGN;
 	}
 	
-	printf ("static unsigned int datetok_table[256] = {");
+	printf ("static const unsigned int datetok_table[256] = {");
 	for (i = 0; i < 256; i++) {
 		if (i % 16 == 0)
 			printf ("\n\t");
Index: camel/camel-block-file.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/camel-block-file.c,v
retrieving revision 1.16
diff -u -r1.16 camel-block-file.c
--- camel/camel-block-file.c	2 Dec 2004 08:03:29 -0000	1.16
+++ camel/camel-block-file.c	22 Apr 2005 16:04:31 -0000
@@ -810,7 +810,7 @@
 static EDList key_file_list = E_DLIST_INITIALISER(key_file_list);
 static EDList key_file_active_list = E_DLIST_INITIALISER(key_file_active_list);
 static int key_file_count = 0;
-static int key_file_threshhold = 10;
+static const int key_file_threshhold = 10;
 
 static void
 camel_key_file_class_init(CamelKeyFileClass *klass)
Index: camel/camel-charset-map-private.h
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/camel-charset-map-private.h,v
retrieving revision 1.5
diff -u -r1.5 camel-charset-map-private.h
--- camel/camel-charset-map-private.h	7 Jan 2002 20:29:37 -0000	1.5
+++ camel/camel-charset-map-private.h	22 Apr 2005 16:04:31 -0000
@@ -1,6 +1,6 @@
 /* This file is automatically generated: DO NOT EDIT */
 
-static unsigned char m000[256] = {
+static const unsigned char m000[256] = {
 	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
 	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
 	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
@@ -35,7 +35,7 @@
 	0x82, 0x80, 0x83, 0x82, 0x83, 0x01, 0x00, 0x80, 
 };
 
-static unsigned char m001[256] = {
+static const unsigned char m001[256] = {
 	0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 
 	0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 
 	0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 
@@ -70,7 +70,7 @@
 	0x03, 0x02, 0x02, 0x02, 0x03, 0x02, 0x02, 0x02, 
 };
 
-static unsigned char m010[256] = {
+static const unsigned char m010[256] = {
 	0x02, 0x02, 0x01, 0x01, 0x03, 0x03, 0x01, 0x01, 
 	0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x01, 0x01, 
 	0x03, 0x03, 0x02, 0x02, 0x00, 0x00, 0x02, 0x02, 
@@ -105,7 +105,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m011[256] = {
+static const unsigned char m011[256] = {
 	0x01, 0x01, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 
 	0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 
 	0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01, 0x01, 
@@ -140,7 +140,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m020[256] = {
+static const unsigned char m020[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
@@ -175,7 +175,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m030[256] = {
+static const unsigned char m030[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
@@ -210,7 +210,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m040[256] = {
+static const unsigned char m040[256] = {
 	0x00, 0x1c, 0x10, 0x10, 0x18, 0x10, 0x18, 0x18, 
 	0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x10, 0x10, 
 	0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 
@@ -245,7 +245,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m041[256] = {
+static const unsigned char m041[256] = {
 	0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 
 	0x04, 0x04, 0x04, 0x04, 0x04, 0x00, 0x04, 0x04, 
 	0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 
@@ -280,7 +280,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m050[256] = {
+static const unsigned char m050[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
@@ -315,7 +315,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m200[256] = {
+static const unsigned char m200[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x40, 
@@ -350,7 +350,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m201[256] = {
+static const unsigned char m201[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 
@@ -385,7 +385,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m210[256] = {
+static const unsigned char m210[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 
@@ -420,7 +420,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m211[256] = {
+static const unsigned char m211[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 
@@ -455,7 +455,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m220[256] = {
+static const unsigned char m220[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
@@ -490,7 +490,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m230[256] = {
+static const unsigned char m230[256] = {
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
@@ -525,7 +525,7 @@
 	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 };
 
-static unsigned char m250[256] = {
+static const unsigned char m250[256] = {
 	0x0c, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 
 	0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 
 	0x0c, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 
@@ -561,8 +561,8 @@
 };
 
 struct {
-	unsigned char *bits0;
-	unsigned char *bits1;
+	const unsigned char *bits0;
+	const unsigned char *bits1;
 } camel_charmap[256] = {
 	{ m000, m001, }, { m010, m011, }, { m020, 0, }, { m030, 0, }, { m040, m041, }, { m050, 0, }, { 0, 0, }, { 0, 0, }, 
 	{ 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, 
@@ -598,7 +598,7 @@
 	{ 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, { 0, 0, }, 
 };
 
-struct {
+const struct {
 	const char *name;
 	unsigned int bit;
 } camel_charinfo[] = {
Index: camel/camel-mime-message.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/camel-mime-message.c,v
retrieving revision 1.132
diff -u -r1.132 camel-mime-message.c
--- camel/camel-mime-message.c	2 Mar 2005 02:56:20 -0000	1.132
+++ camel/camel-mime-message.c	22 Apr 2005 16:04:31 -0000
@@ -904,12 +904,12 @@
 	return check.part;
 }
 
-static char *tz_months[] = {
+static const char tz_months[][4] = {
 	"Jan", "Feb", "Mar", "Apr", "May", "Jun",
 	"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
 };
 
-static char *tz_days[] = {
+static const char tz_days[][4] = {
 	"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"
 };
 
Index: camel/camel-mime-utils.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/camel-mime-utils.c,v
retrieving revision 1.228
diff -u -r1.228 camel-mime-utils.c
--- camel/camel-mime-utils.c	14 Apr 2005 20:10:20 -0000	1.228
+++ camel/camel-mime-utils.c	22 Apr 2005 16:04:32 -0000
@@ -74,15 +74,15 @@
 #define CAMEL_UUENCODE_CHAR(c)  ((c) ? (c) + ' ' : '`')
 #define	CAMEL_UUDECODE_CHAR(c)	(((c) - ' ') & 077)
 
-static char *base64_alphabet =
+static const char base64_alphabet[] =
 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
 
-static unsigned char tohex[16] = {
+static const unsigned char tohex[16] = {
 	'0', '1', '2', '3', '4', '5', '6', '7',
 	'8', '9', 'A', 'B', 'C', 'D', 'E', 'F'
 };
 
-static unsigned char camel_mime_base64_rank[256] = {
+static const unsigned char camel_mime_base64_rank[256] = {
 	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
 	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
 	0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
@@ -3272,8 +3272,8 @@
 }
 
 /* hrm, is there a library for this shit? */
-static struct {
-	char *name;
+static const struct {
+	char name[4];
 	int offset;
 } tz_offsets [] = {
 	{ "UT", 0 },
@@ -3293,12 +3293,12 @@
 	{ "Y", 1200 },
 };
 
-static char *tz_months [] = {
+static const char tz_months [][4] = {
 	"Jan", "Feb", "Mar", "Apr", "May", "Jun",
 	"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
 };
 
-static char *tz_days [] = {
+static const char tz_days [][4] = {
 	"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"
 };
 
Index: camel/camel-object.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/camel-object.c,v
retrieving revision 1.52
diff -u -r1.52 camel-object.c
--- camel/camel-object.c	23 Dec 2004 04:22:43 -0000	1.52
+++ camel/camel-object.c	22 Apr 2005 16:04:33 -0000
@@ -105,18 +105,18 @@
 };
 
 /* used to tag a bag hookpair */
-static const char *bag_name = "object:bag";
+static const char bag_name[] = "object:bag\0";
 
 /* meta-data stuff */
 static void co_metadata_free(CamelObject *obj, CamelObjectMeta *meta);
 static CamelObjectMeta *co_metadata_get(CamelObject *obj);
 static CamelHookPair *co_metadata_pair(CamelObject *obj, int create);
 
-static const char *meta_name = "object:meta";
+static const char meta_name[] = "object:meta\0";
 #define CAMEL_OBJECT_STATE_FILE_MAGIC "CLMD"
 
 /* interface stuff */
-static const char *interface_name = "object:interface";
+static const char interface_name[] = "object:interface\0";
 
 /* ********************************************************************** */
 
Index: camel/camel-url-scanner.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/camel-url-scanner.c,v
retrieving revision 1.16
diff -u -r1.16 camel-url-scanner.c
--- camel/camel-url-scanner.c	19 Apr 2005 15:05:41 -0000	1.16
+++ camel/camel-url-scanner.c	22 Apr 2005 16:04:33 -0000
@@ -149,9 +149,9 @@
 #define is_urlsafe(x) ((url_scanner_table[(unsigned char)(x)] & (IS_ALPHA|IS_DIGIT|IS_URLSAFE)) != 0)
 
 
-static struct {
-	char open;
-	char close;
+static const struct {
+	const char open;
+	const char close;
 } url_braces[] = {
 	{ '(', ')' },
 	{ '{', '}' },
Index: camel/camel-utf8.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/camel-utf8.c,v
retrieving revision 1.6
diff -u -r1.6 camel-utf8.c
--- camel/camel-utf8.c	5 Jan 2004 20:55:29 -0000	1.6
+++ camel/camel-utf8.c	22 Apr 2005 16:04:33 -0000
@@ -181,10 +181,10 @@
 	g_string_append(out, buffer);
 }
 
-static char *utf7_alphabet =
+static const char utf7_alphabet[] =
 	"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+,";
 
-static unsigned char utf7_rank[256] = {
+static const unsigned char utf7_rank[256] = {
 	0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
 	0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
 	0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3e,0x3f,0xff,0xff,0xff,
Index: camel/gentables.pl
===================================================================
RCS file: /cvs/gnome/evolution-data-server/camel/gentables.pl,v
retrieving revision 1.1
diff -u -r1.1 gentables.pl
--- camel/gentables.pl	20 Dec 2004 15:16:42 -0000	1.1
+++ camel/gentables.pl	22 Apr 2005 16:04:33 -0000
@@ -90,7 +90,7 @@
 #header_init_bits(CAMEL_MIME_IS_PSAFE, 0, 0, CHARS_PSPECIAL);
 
 # output
-print "unsigned short camel_mime_special_table[256] = {\n\t";
+print "const unsigned short camel_mime_special_table[256] = {\n\t";
 foreach $i (0..255) {
     printf "0x%04x,", $table[$i];
     if (($i & 0x7) == 0x7) {

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]