shithub: sox

Download patch

ref: c0fd1892b017204adf4f2bb8bf855370c33b284c
parent: a32b1e7095466c6ba08d84827b0cb16e6e623696
author: robs <robs>
date: Mon Sep 10 15:18:18 EDT 2007

don't assume all files in PKGLIBDIR have prefix

--- a/src/soxio.c
+++ b/src/soxio.c
@@ -32,10 +32,10 @@
   const char *end = file + strlen(file);
   const char prefix[] = "libsox_fmt_";
   char fnname[MAX_NAME_LEN];
-  char *start = strstr(file, prefix) + sizeof(prefix) - 1;
+  char *start = strstr(file, prefix);
 
   (void)data;
-  if (start < end) {
+  if (start && (start += sizeof(prefix) - 1) < end) {
     int ret = snprintf(fnname, MAX_NAME_LEN, "sox_%.*s_format_fn", end - start, start);
     if (ret > 0 && ret < MAX_NAME_LEN) {
       sox_format_fns[sox_formats].fn = (sox_format_fn_t)lt_dlsym(lth, fnname);