pidgin/gtkrequest.c

branch
soc.2013.gobjectification
changeset 34892
65e25c679ca5
parent 34874
e03d555394c5
parent 34308
cdb187c27360
child 34940
c0aef3b64c56
child 36577
0f30fdfb84be
equal deleted inserted replaced
34891:3882234d2097 34892:65e25c679ca5
151 value = multiline_value; 151 value = multiline_value;
152 } 152 }
153 else 153 else
154 value = gtk_entry_get_text(GTK_ENTRY(data->u.input.entry)); 154 value = gtk_entry_get_text(GTK_ENTRY(data->u.input.entry));
155 155
156 if (id < data->cb_count && data->cbs[id] != NULL) 156 if (id >= 0 && (gsize)id < data->cb_count && data->cbs[id] != NULL)
157 ((PurpleRequestInputCb)data->cbs[id])(data->user_data, value); 157 ((PurpleRequestInputCb)data->cbs[id])(data->user_data, value);
158 else if (data->cbs[1] != NULL) 158 else if (data->cbs[1] != NULL)
159 ((PurpleRequestInputCb)data->cbs[1])(data->user_data, value); 159 ((PurpleRequestInputCb)data->cbs[1])(data->user_data, value);
160 160
161 if (data->u.input.multiline) 161 if (data->u.input.multiline)
167 static void 167 static void
168 action_response_cb(GtkDialog *dialog, gint id, PidginRequestData *data) 168 action_response_cb(GtkDialog *dialog, gint id, PidginRequestData *data)
169 { 169 {
170 generic_response_start(data); 170 generic_response_start(data);
171 171
172 if (id < data->cb_count && data->cbs[id] != NULL) 172 if (id >= 0 && (gsize)id < data->cb_count && data->cbs[id] != NULL)
173 ((PurpleRequestActionCb)data->cbs[id])(data->user_data, id); 173 ((PurpleRequestActionCb)data->cbs[id])(data->user_data, id);
174 174
175 purple_request_close(PURPLE_REQUEST_INPUT, data); 175 purple_request_close(PURPLE_REQUEST_INPUT, data);
176 } 176 }
177 177
182 GtkWidget *radio = g_object_get_data(G_OBJECT(dialog), "radio"); 182 GtkWidget *radio = g_object_get_data(G_OBJECT(dialog), "radio");
183 GSList *group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radio)); 183 GSList *group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radio));
184 184
185 generic_response_start(data); 185 generic_response_start(data);
186 186
187 if (id < data->cb_count && data->cbs[id] != NULL) 187 if (id >= 0 && (gsize)id < data->cb_count && data->cbs[id] != NULL)
188 while (group) { 188 while (group) {
189 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(group->data))) { 189 if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(group->data))) {
190 ((PurpleRequestChoiceCb)data->cbs[id])(data->user_data, GPOINTER_TO_INT(g_object_get_data(G_OBJECT(group->data), "choice_id"))); 190 ((PurpleRequestChoiceCb)data->cbs[id])(data->user_data, GPOINTER_TO_INT(g_object_get_data(G_OBJECT(group->data), "choice_id")));
191 break; 191 break;
192 } 192 }
593 GtkWidget *label; 593 GtkWidget *label;
594 GtkWidget *img = NULL; 594 GtkWidget *img = NULL;
595 void **buttons; 595 void **buttons;
596 char *label_text; 596 char *label_text;
597 char *primary_esc, *secondary_esc; 597 char *primary_esc, *secondary_esc;
598 int i; 598 gsize i;
599 599
600 data = g_new0(PidginRequestData, 1); 600 data = g_new0(PidginRequestData, 1);
601 data->type = PURPLE_REQUEST_ACTION; 601 data->type = PURPLE_REQUEST_ACTION;
602 data->user_data = user_data; 602 data->user_data = user_data;
603 603

mercurial