projects
/
ruby-vorbistagger.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Separated vcedit_state_new() and vcedit_open() again.
[ruby-vorbistagger.git]
/
ext
/
vcedit.c
diff --git
a/ext/vcedit.c
b/ext/vcedit.c
index 336ce26e94f531a299c045091016dc1bfe7d60d2..10746706f71c97fbd0c620b4ca2d95f4d8d8be9b 100644
(file)
--- a/
ext/vcedit.c
+++ b/
ext/vcedit.c
@@
-31,8
+31,6
@@
#define CHUNKSIZE 4096
#define CHUNKSIZE 4096
-static int vcedit_open (vcedit_state *state);
-
struct vcedit_state_St {
int refcount;
struct vcedit_state_St {
int refcount;
@@
-119,13
+117,6
@@
vcedit_state_new (const char *filename)
snprintf (state->filename, sizeof (state->filename),
"%s", filename);
snprintf (state->filename, sizeof (state->filename),
"%s", filename);
- state->in = fopen (state->filename, "rb");
-
- if (vcedit_open (state) < 0) {
- vcedit_state_free (state);
- return NULL;
- }
-
return state;
}
return state;
}
@@
-287,7
+278,7
@@
_fetch_next_packet (vcedit_state *s, ogg_packet *p, ogg_page *page)
return _fetch_next_packet (s, p, page);
}
return _fetch_next_packet (s, p, page);
}
-
static
int
+int
vcedit_open (vcedit_state *state)
{
char *buffer;
vcedit_open (vcedit_state *state)
{
char *buffer;
@@
-297,6
+288,12
@@
vcedit_open (vcedit_state *state)
ogg_packet header_main, header_comments, header_codebooks;
ogg_page og;
ogg_packet header_main, header_comments, header_codebooks;
ogg_page og;
+ state->in = fopen (state->filename, "rb");
+ if (!state->in) {
+ state->lasterror = "Cannot open file.";
+ return -1;
+ }
+
ogg_sync_init (state->oy);
while (1) {
ogg_sync_init (state->oy);
while (1) {
@@
-603,8
+600,6
@@
cleanup:
}
vcedit_clear_internals (state);
}
vcedit_clear_internals (state);
-
- state->in = fopen (state->filename, "rb");
vcedit_open (state);
return 0;
vcedit_open (state);
return 0;