src/savedstatuses.c

changeset 12197
706655f09bbc
parent 12125
c1e55f812ded
child 12283
1882e6c066e9
equal deleted inserted replaced
12196:92a07bdbe0df 12197:706655f09bbc
569 569
570 GaimSavedStatus * 570 GaimSavedStatus *
571 gaim_savedstatus_get_current() 571 gaim_savedstatus_get_current()
572 { 572 {
573 int creation_time; 573 int creation_time;
574 GaimSavedStatus *saved_status; 574 GaimSavedStatus *saved_status = NULL;
575 575
576 creation_time = gaim_prefs_get_int("/core/savedstatus/current"); 576 creation_time = gaim_prefs_get_int("/core/savedstatus/current");
577 577
578 if (creation_time == 0) 578 if (creation_time != 0)
579 saved_status = g_hash_table_lookup(creation_times, &creation_time);
580
581 if (saved_status == NULL)
579 { 582 {
580 /* 583 /*
581 * We don't have a current saved statuses! This is either a new 584 * We don't have a current saved statuses! This is either a new
582 * Gaim user or someone upgrading from Gaim 1.5.0 or older. Add 585 * Gaim user or someone upgrading from Gaim 1.5.0 or older, or
583 * a default status. 586 * possibly someone who deleted the status they were currently
587 * using? In any case, add a default status.
584 */ 588 */
585 saved_status = gaim_savedstatus_new(NULL, GAIM_STATUS_AVAILABLE); 589 saved_status = gaim_savedstatus_new(NULL, GAIM_STATUS_AVAILABLE);
586 gaim_savedstatus_set_message(saved_status, _("Hello!")); 590 gaim_savedstatus_set_message(saved_status, _("Hello!"));
587 }
588 else
589 {
590 saved_status = g_hash_table_lookup(creation_times, &creation_time);
591 } 591 }
592 592
593 return saved_status; 593 return saved_status;
594 } 594 }
595 595
638 } 638 }
639 639
640 gboolean 640 gboolean
641 gaim_savedstatus_is_transient(const GaimSavedStatus *saved_status) 641 gaim_savedstatus_is_transient(const GaimSavedStatus *saved_status)
642 { 642 {
643 g_return_val_if_fail(saved_status != NULL, TRUE);
644
643 return (saved_status->title == NULL); 645 return (saved_status->title == NULL);
644 } 646 }
645 647
646 const char * 648 const char *
647 gaim_savedstatus_get_title(const GaimSavedStatus *saved_status) 649 gaim_savedstatus_get_title(const GaimSavedStatus *saved_status)
648 { 650 {
651 g_return_val_if_fail(saved_status != NULL, NULL);
652
649 return saved_status->title; 653 return saved_status->title;
650 } 654 }
651 655
652 GaimStatusPrimitive 656 GaimStatusPrimitive
653 gaim_savedstatus_get_type(const GaimSavedStatus *saved_status) 657 gaim_savedstatus_get_type(const GaimSavedStatus *saved_status)
654 { 658 {
659 g_return_val_if_fail(saved_status != NULL, GAIM_STATUS_OFFLINE);
660
655 return saved_status->type; 661 return saved_status->type;
656 } 662 }
657 663
658 const char * 664 const char *
659 gaim_savedstatus_get_message(const GaimSavedStatus *saved_status) 665 gaim_savedstatus_get_message(const GaimSavedStatus *saved_status)
660 { 666 {
667 g_return_val_if_fail(saved_status != NULL, NULL);
668
661 return saved_status->message; 669 return saved_status->message;
662 } 670 }
663 671
664 time_t 672 time_t
665 gaim_savedstatus_get_creation_time(const GaimSavedStatus *saved_status) 673 gaim_savedstatus_get_creation_time(const GaimSavedStatus *saved_status)
666 { 674 {
675 g_return_val_if_fail(saved_status != NULL, 0);
676
667 return saved_status->creation_time; 677 return saved_status->creation_time;
668 } 678 }
669 679
670 gboolean 680 gboolean
671 gaim_savedstatus_has_substatuses(const GaimSavedStatus *saved_status) 681 gaim_savedstatus_has_substatuses(const GaimSavedStatus *saved_status)
672 { 682 {
683 g_return_val_if_fail(saved_status != NULL, FALSE);
684
673 return (saved_status->substatuses != NULL); 685 return (saved_status->substatuses != NULL);
674 } 686 }
675 687
676 GaimSavedStatusSub * 688 GaimSavedStatusSub *
677 gaim_savedstatus_get_substatus(const GaimSavedStatus *saved_status, 689 gaim_savedstatus_get_substatus(const GaimSavedStatus *saved_status,

mercurial