Changeset 6665
- Timestamp:
- 06/20/09 12:38:08 (15 months ago)
- Files:
-
- 1 modified
-
trunk/ocaml-taglib/src/taglib_stubs.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ocaml-taglib/src/taglib_stubs.c
r4954 r6665 46 46 #include <caml/fail.h> 47 47 #include <caml/memory.h> 48 #include <caml/signals.h> 48 49 49 50 CAMLprim value caml_taglib_init() … … 91 92 { 92 93 CAMLparam1(name); 93 TagLib_File *f = taglib_file_new((const char *)String_val(name)) ; 94 95 int len = caml_string_length(name); 96 char *filename = malloc(len); 97 memcpy(filename, String_val(name), len); 98 99 caml_enter_blocking_section(); 100 TagLib_File *f = taglib_file_new(filename) ; 101 caml_leave_blocking_section(); 102 103 free(filename); 94 104 95 105 if (f == NULL) … … 102 112 { 103 113 CAMLparam2(name,type); 104 TagLib_File *f = taglib_file_new_type((const char *)String_val(name),Int_val(type)) ; 114 115 int len = caml_string_length(name); 116 char *filename = malloc(len); 117 memcpy(filename, String_val(name), len); 118 119 caml_enter_blocking_section(); 120 TagLib_File *f = 121 taglib_file_new_type((const char *)String_val(name),Int_val(type)) ; 122 caml_leave_blocking_section(); 123 124 free(filename); 105 125 106 126 if (f == NULL)
