mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-05-06 21:33:08 +00:00
Fix memory leak in presence model.
This commit is contained in:
parent
ba5c902bba
commit
419cac616c
1 changed files with 8 additions and 4 deletions
|
|
@ -278,6 +278,7 @@ LinphonePresenceBasicStatus linphone_presence_model_get_basic_status(const Linph
|
|||
|
||||
int linphone_presence_model_set_basic_status(LinphonePresenceModel *model, LinphonePresenceBasicStatus basic_status) {
|
||||
LinphonePresenceService *service;
|
||||
int err = 0;
|
||||
|
||||
if (model == NULL) return -1;
|
||||
|
||||
|
|
@ -285,8 +286,9 @@ int linphone_presence_model_set_basic_status(LinphonePresenceModel *model, Linph
|
|||
service = linphone_presence_service_new(NULL, basic_status, NULL);
|
||||
if (service == NULL) return -1;
|
||||
|
||||
if (linphone_presence_model_add_service(model, service) < 0) return -1;
|
||||
return 0;
|
||||
err = linphone_presence_model_add_service(model, service);
|
||||
linphone_presence_service_unref(service);
|
||||
return err;
|
||||
}
|
||||
|
||||
static void presence_service_find_newer_timestamp(LinphonePresenceService *service, time_t *timestamp) {
|
||||
|
|
@ -363,6 +365,7 @@ LinphonePresenceActivity * linphone_presence_model_get_activity(const LinphonePr
|
|||
int linphone_presence_model_set_activity(LinphonePresenceModel *model, LinphonePresenceActivityType acttype, const char *description) {
|
||||
LinphonePresenceBasicStatus basic_status = LinphonePresenceBasicStatusOpen;
|
||||
LinphonePresenceActivity *activity;
|
||||
int err = 0;
|
||||
|
||||
if (model == NULL) return -1;
|
||||
|
||||
|
|
@ -383,8 +386,9 @@ int linphone_presence_model_set_activity(LinphonePresenceModel *model, LinphoneP
|
|||
linphone_presence_model_clear_activities(model);
|
||||
activity = linphone_presence_activity_new(acttype, description);
|
||||
if (activity == NULL) return -1;
|
||||
return linphone_presence_model_add_activity(model, activity);
|
||||
|
||||
err = linphone_presence_model_add_activity(model, activity);
|
||||
linphone_presence_activity_unref(activity);
|
||||
return err;
|
||||
}
|
||||
|
||||
unsigned int linphone_presence_model_get_nb_activities(const LinphonePresenceModel *model) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue