comparison mcabber/src/settings.c @ 281:f562b9af2de7

Add "const" specifier in prototypes It's easier then to know when variables are read-only (and shouldn't be freed).
author Mikael Berthe <mikael@lilotux.net>
date Wed, 06 Jul 2005 22:18:05 +0100
parents 68ce34b4243b
children 87d6ac21cd1b
comparison
equal deleted inserted replaced
280:68ce34b4243b 281:f562b9af2de7
42 else if (type == SETTINGS_TYPE_BINDING) return &binding; 42 else if (type == SETTINGS_TYPE_BINDING) return &binding;
43 return NULL; 43 return NULL;
44 } 44 }
45 45
46 // Return a pointer to the node with the requested key, or NULL if none found 46 // Return a pointer to the node with the requested key, or NULL if none found
47 GSList *settings_find(GSList *list, gchar *key) 47 GSList *settings_find(GSList *list, const gchar *key)
48 { 48 {
49 GSList *ptr; 49 GSList *ptr;
50 50
51 if (!list) return NULL; 51 if (!list) return NULL;
52 52
67 // 67 //
68 // If this isn't a assignment (no = char), the function will set *pval 68 // If this isn't a assignment (no = char), the function will set *pval
69 // to NULL and return FALSE. 69 // to NULL and return FALSE.
70 // 70 //
71 // The called should g_free() *pkey and *pval (if not NULL) after use. 71 // The called should g_free() *pkey and *pval (if not NULL) after use.
72 guint parse_assigment(gchar *assignment, gchar **pkey, gchar **pval) 72 guint parse_assigment(gchar *assignment, const gchar **pkey, const gchar **pval)
73 { 73 {
74 char *key, *val, *t; 74 char *key, *val, *t;
75 75
76 *pkey = *pval = NULL; 76 *pkey = *pval = NULL;
77 77
112 112
113 *pval = g_strndup(val, t+1-val); 113 *pval = g_strndup(val, t+1-val);
114 return TRUE; 114 return TRUE;
115 } 115 }
116 116
117 void settings_set(guint type, gchar *key, gchar *value) 117 void settings_set(guint type, const gchar *key, const gchar *value)
118 { 118 {
119 GSList **plist; 119 GSList **plist;
120 GSList *sptr; 120 GSList *sptr;
121 T_setting *setting; 121 T_setting *setting;
122 122
143 setting->value = g_strdup(value); 143 setting->value = g_strdup(value);
144 *plist = g_slist_append(*plist, setting); 144 *plist = g_slist_append(*plist, setting);
145 } 145 }
146 } 146 }
147 147
148 void settings_del(guint type, gchar *key) 148 void settings_del(guint type, const gchar *key)
149 { 149 {
150 settings_set(type, key, NULL); 150 settings_set(type, key, NULL);
151 } 151 }
152 152
153 gchar *settings_get(guint type, gchar *key) 153 const gchar *settings_get(guint type, const gchar *key)
154 { 154 {
155 GSList **plist; 155 GSList **plist;
156 GSList *sptr; 156 GSList *sptr;
157 T_setting *setting; 157 T_setting *setting;
158 158
162 162
163 setting = (T_setting*)sptr->data; 163 setting = (T_setting*)sptr->data;
164 return setting->value; 164 return setting->value;
165 } 165 }
166 166
167 int settings_get_int(guint type, gchar *key) 167 int settings_get_int(guint type, const gchar *key)
168 { 168 {
169 gchar *setval = settings_get(type, key); 169 const gchar *setval = settings_get(type, key);
170 170
171 if (setval) return atoi(setval); 171 if (setval) return atoi(setval);
172 return 0; 172 return 0;
173 } 173 }
174 174