… | |
… | |
232 | CODE: |
232 | CODE: |
233 | { |
233 | { |
234 | STRLEN len; |
234 | STRLEN len; |
235 | char *data = SvPVbyte (path_or_data, len); |
235 | char *data = SvPVbyte (path_or_data, len); |
236 | |
236 | |
237 | perlinterp_release (); |
|
|
238 | |
|
|
239 | if (!magic_cookie[0]) |
237 | if (!magic_cookie[0]) |
240 | { |
238 | { |
241 | magic_cookie[0] = magic_open (MAGIC_SYMLINK); |
239 | magic_cookie[0] = magic_open (MAGIC_SYMLINK); |
242 | magic_cookie[1] = magic_open (MAGIC_SYMLINK | MAGIC_MIME); |
240 | magic_cookie[1] = magic_open (MAGIC_SYMLINK | MAGIC_MIME_TYPE); |
|
|
241 | magic_load (magic_cookie[0], 0); |
|
|
242 | magic_load (magic_cookie[1], 0); |
243 | } |
243 | } |
|
|
244 | |
|
|
245 | perlinterp_release (); |
244 | |
246 | |
245 | RETVAL = ix & 2 |
247 | RETVAL = ix & 2 |
246 | ? magic_buffer (magic_cookie[ix], data, len) |
248 | ? magic_buffer (magic_cookie[ix & 1], data, len) |
247 | : magic_file (magic_cookie[ix], data); |
249 | : magic_file (magic_cookie[ix & 1], data); |
248 | |
250 | |
249 | perlinterp_acquire (); |
251 | perlinterp_acquire (); |
250 | } |
252 | } |
251 | OUTPUT: |
253 | OUTPUT: |
252 | RETVAL |
254 | RETVAL |