annotate src/audacious/strings.h @ 4118:1112f53ecc18

prevent BadAlloc's
author Tomasz Mon <desowin@gmail.com>
date Tue, 25 Dec 2007 16:28:34 +0100
parents 9e24c8746d99
children 5a0f5ef1de61
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2373
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
1 /* Audacious
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
2 * Copyright (C) 2005-2007 Audacious development team.
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
3 *
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
4 * BMP - Cross-platform multimedia player
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
5 * Copyright (C) 2003-2004 BMP development team.
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
6 *
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
7 * Based on XMMS:
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
8 * Copyright (C) 1998-2003 XMMS development team.
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
9 *
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
10 * This program is free software; you can redistribute it and/or modify
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
11 * it under the terms of the GNU General Public License as published by
3121
3b6d316f8b09 GPL3 relicensing.
William Pitcock <nenolod@atheme-project.org>
parents: 2385
diff changeset
12 * the Free Software Foundation; under version 3 of the License.
2373
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
13 *
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
14 * This program is distributed in the hope that it will be useful,
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
17 * GNU General Public License for more details.
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
18 *
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
19 * You should have received a copy of the GNU General Public License
3121
3b6d316f8b09 GPL3 relicensing.
William Pitcock <nenolod@atheme-project.org>
parents: 2385
diff changeset
20 * along with this program. If not, see <http://www.gnu.org/licenses>.
3123
f1c756f39e6c Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents: 3121
diff changeset
21 *
f1c756f39e6c Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents: 3121
diff changeset
22 * The Audacious team does not consider modular code linking to
f1c756f39e6c Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents: 3121
diff changeset
23 * Audacious or using our public API to be a derived work.
2373
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
24 */
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
25
2385
ab2b1b6f6179 [svn] - add missing inclusion of strings.h where necessary, do not export main.h and export strings.h
giacomo
parents: 2373
diff changeset
26 #ifndef AUD_STRINGS_H
ab2b1b6f6179 [svn] - add missing inclusion of strings.h where necessary, do not export main.h and export strings.h
giacomo
parents: 2373
diff changeset
27 #define AUD_STRINGS_H
2373
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
28
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
29 #include <glib.h>
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
30
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
31 gchar *escape_shell_chars(const gchar * string);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
32
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
33 gchar *str_append(gchar * str, const gchar * add_str);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
34 gchar *str_replace(gchar * str, gchar * new_str);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
35 void str_replace_in(gchar ** str, gchar * new_str);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
36
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
37 gboolean str_has_prefix_nocase(const gchar * str, const gchar * prefix);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
38 gboolean str_has_suffix_nocase(const gchar * str, const gchar * suffix);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
39 gboolean str_has_suffixes_nocase(const gchar * str, gchar * const *suffixes);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
40
4089
9e24c8746d99 - introduce new API functions uri_to_display_basename() and uri_to_display_dirname(). each function derives utf8 encoded basename or dirname from given uri respectively.
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 4070
diff changeset
41 gchar *str_to_utf8(const gchar * str);
2373
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
42 gchar *str_to_utf8_fallback(const gchar * str);
4089
9e24c8746d99 - introduce new API functions uri_to_display_basename() and uri_to_display_dirname(). each function derives utf8 encoded basename or dirname from given uri respectively.
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 4070
diff changeset
43
2373
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
44 gchar *filename_to_utf8(const gchar * filename);
4089
9e24c8746d99 - introduce new API functions uri_to_display_basename() and uri_to_display_dirname(). each function derives utf8 encoded basename or dirname from given uri respectively.
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 4070
diff changeset
45 gchar *uri_to_display_basename(const gchar * uri);
9e24c8746d99 - introduce new API functions uri_to_display_basename() and uri_to_display_dirname(). each function derives utf8 encoded basename or dirname from given uri respectively.
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 4070
diff changeset
46 gchar *uri_to_display_dirname(const gchar * uri);
2373
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
47
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
48 const gchar *str_skip_chars(const gchar * str, const gchar * chars);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
49
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
50 gchar *convert_title_text(gchar * text);
4070
040243a50bd3 - modified playlist_load_ins_file() and playlist_load_ins_file_tuple(). path builder and ext_hash checker
Yoshiki Yazawa <yaz@cc.rim.or.jp>
parents: 3123
diff changeset
51 gchar *convert_dos_path(gchar * text);
2373
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
52
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
53 gchar *chardet_to_utf8(const gchar *str, gssize len,
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
54 gsize *arg_bytes_read, gsize *arg_bytes_write,
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
55 GError **arg_error);
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
56
ad1d7687814c [svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
diff changeset
57 #endif