playlist/m3u: allocate ExtM3uPlaylist with new/delete
This commit is contained in:
@@ -28,16 +28,18 @@
|
|||||||
struct M3uPlaylist {
|
struct M3uPlaylist {
|
||||||
struct playlist_provider base;
|
struct playlist_provider base;
|
||||||
|
|
||||||
TextInputStream *tis;
|
TextInputStream tis;
|
||||||
|
|
||||||
|
M3uPlaylist(input_stream *is)
|
||||||
|
:tis(is) {
|
||||||
|
playlist_provider_init(&base, &m3u_playlist_plugin);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct playlist_provider *
|
static struct playlist_provider *
|
||||||
m3u_open_stream(struct input_stream *is)
|
m3u_open_stream(struct input_stream *is)
|
||||||
{
|
{
|
||||||
M3uPlaylist *playlist = g_new(M3uPlaylist, 1);
|
M3uPlaylist *playlist = new M3uPlaylist(is);
|
||||||
|
|
||||||
playlist_provider_init(&playlist->base, &m3u_playlist_plugin);
|
|
||||||
playlist->tis = new TextInputStream(is);
|
|
||||||
|
|
||||||
return &playlist->base;
|
return &playlist->base;
|
||||||
}
|
}
|
||||||
@@ -47,8 +49,7 @@ m3u_close(struct playlist_provider *_playlist)
|
|||||||
{
|
{
|
||||||
M3uPlaylist *playlist = (M3uPlaylist *)_playlist;
|
M3uPlaylist *playlist = (M3uPlaylist *)_playlist;
|
||||||
|
|
||||||
delete playlist->tis;
|
delete playlist;
|
||||||
g_free(playlist);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static Song *
|
static Song *
|
||||||
@@ -59,7 +60,7 @@ m3u_read(struct playlist_provider *_playlist)
|
|||||||
const char *line_s;
|
const char *line_s;
|
||||||
|
|
||||||
do {
|
do {
|
||||||
if (!playlist->tis->ReadLine(line))
|
if (!playlist->tis.ReadLine(line))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
line_s = line.c_str();
|
line_s = line.c_str();
|
||||||
|
Reference in New Issue
Block a user