Coverage Report

Created: 2026-07-25 06:37

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/pidgin/libpurple/protocols/jabber/google/google_presence.c
Line
Count
Source
1
/**
2
 * Purple is the legal property of its developers, whose names are too numerous
3
 * to list here.  Please refer to the COPYRIGHT file distributed with this
4
 * source distribution.
5
 *
6
 * This program is free software; you can redistribute it and/or modify
7
 * it under the terms of the GNU General Public License as published by
8
 * the Free Software Foundation; either version 2 of the License, or
9
 * (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
19
 */
20
21
#include "internal.h"
22
#include "debug.h"
23
#include "google_presence.h"
24
25
void jabber_google_presence_incoming(JabberStream *js, const char *user, JabberBuddyResource *jbr)
26
0
{
27
0
  if (!js->googletalk)
28
0
    return;
29
0
  if (jbr->status && purple_str_has_prefix(jbr->status, "♫ ")) {
30
0
    purple_prpl_got_user_status(js->gc->account, user, "tune",
31
0
              PURPLE_TUNE_TITLE, jbr->status + strlen("♫ "), NULL);
32
0
    g_free(jbr->status);
33
0
    jbr->status = NULL;
34
0
  } else {
35
0
    purple_prpl_got_user_status_deactive(js->gc->account, user, "tune");
36
0
  }
37
0
}
38
39
char *jabber_google_presence_outgoing(PurpleStatus *tune)
40
0
{
41
0
  const char *attr = purple_status_get_attr_string(tune, PURPLE_TUNE_TITLE);
42
0
  return attr ? g_strdup_printf("♫ %s", attr) : g_strdup("");
43
0
}