Mercurial > pidgin.yaz
comparison src/gtksavedstatuses.c @ 10574:77ef3f2f0df8
[gaim-migrate @ 11966]
Leak fixes, round 3. Also, fix find in the log viewer to find in all
logs, not just every-other-one-you-select.
Plus some other minor tweaks.
committer: Tailor Script <tailor@pidgin.im>
author | Stu Tomlinson <stu@nosnilmot.com> |
---|---|
date | Sat, 05 Feb 2005 17:59:20 +0000 |
parents | f175ff63d571 |
children | 9cb601a1fcfa |
comparison
equal
deleted
inserted
replaced
10573:2d809781816f | 10574:77ef3f2f0df8 |
---|---|
478 **************************************************************************/ | 478 **************************************************************************/ |
479 | 479 |
480 static gboolean | 480 static gboolean |
481 status_editor_destroy_cb(GtkWidget *widget, GdkEvent *event, gpointer user_data) | 481 status_editor_destroy_cb(GtkWidget *widget, GdkEvent *event, gpointer user_data) |
482 { | 482 { |
483 StatusWindow *dialog = user_data; | 483 StatusEditor *dialog = user_data; |
484 | 484 |
485 g_free(dialog->original_title); | |
485 g_free(dialog); | 486 g_free(dialog); |
486 | 487 |
487 return FALSE; | 488 return FALSE; |
488 } | 489 } |
489 | 490 |
490 static void | 491 static void |
491 status_editor_cancel_cb(GtkButton *button, gpointer user_data) | 492 status_editor_cancel_cb(GtkButton *button, gpointer user_data) |
492 { | 493 { |
493 StatusWindow *dialog = user_data; | 494 StatusEditor *dialog = user_data; |
494 | 495 |
495 gtk_widget_destroy(dialog->window); | 496 gtk_widget_destroy(dialog->window); |
496 | 497 |
498 g_free(dialog->original_title); | |
497 g_free(dialog); | 499 g_free(dialog); |
498 } | 500 } |
499 | 501 |
500 static void | 502 static void |
501 status_editor_save_cb(GtkButton *button, gpointer user_data) | 503 status_editor_save_cb(GtkButton *button, gpointer user_data) |
536 | 538 |
537 if (status_window_find_savedstatus(&iter, dialog->original_title)) | 539 if (status_window_find_savedstatus(&iter, dialog->original_title)) |
538 { | 540 { |
539 gtk_list_store_remove(status_window->model, &iter); | 541 gtk_list_store_remove(status_window->model, &iter); |
540 } | 542 } |
541 | |
542 g_free(dialog->original_title); | |
543 } | 543 } |
544 | 544 |
545 status = gaim_savedstatus_new(title, type); | 545 status = gaim_savedstatus_new(title, type); |
546 if (*unformatted != '\0') | 546 if (*unformatted != '\0') |
547 gaim_savedstatus_set_message(status, message); | 547 gaim_savedstatus_set_message(status, message); |
548 g_free(message); | 548 g_free(message); |
549 g_free(unformatted); | 549 g_free(unformatted); |
550 | 550 |
551 gtk_widget_destroy(dialog->window); | 551 gtk_widget_destroy(dialog->window); |
552 g_free(dialog->original_title); | |
552 g_free(dialog); | 553 g_free(dialog); |
553 | 554 |
554 add_status_to_saved_status_list(status_window->model, status); | 555 add_status_to_saved_status_list(status_window->model, status); |
555 } | 556 } |
556 | 557 |
780 frame = gaim_gtk_create_imhtml(TRUE, &text, &toolbar); | 781 frame = gaim_gtk_create_imhtml(TRUE, &text, &toolbar); |
781 dialog->message = GTK_IMHTML(text); | 782 dialog->message = GTK_IMHTML(text); |
782 gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); | 783 gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); |
783 gtk_widget_show(frame); | 784 gtk_widget_show(frame); |
784 | 785 |
785 if (status != NULL) | 786 if ((status != NULL) && (gaim_savedstatus_get_message(status) != NULL)) |
786 gtk_imhtml_append_text(GTK_IMHTML(text), | 787 gtk_imhtml_append_text(GTK_IMHTML(text), |
787 gaim_savedstatus_get_message(status), 0); | 788 gaim_savedstatus_get_message(status), 0); |
788 | 789 |
789 /* Custom status message disclosure */ | 790 /* Custom status message disclosure */ |
790 disclosure = gaim_disclosure_new(_("Use a different status for some accounts"), | 791 disclosure = gaim_disclosure_new(_("Use a different status for some accounts"), |