You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/app-text/pinfo/files/pinfo-0.6.10-info-suffix.patch

29 lines
968 B

--- a/src/filehandling_functions.c
+++ b/src/filehandling_functions.c
@@ -96,11 +96,14 @@ matchfile(char **buf, char *name)
{
/* use strcat rather than strdup, because xmalloc handles all
* malloc errors */
- char *thisfile = xmalloc(strlen(dp->d_name)+1);
+ int len = strlen(dp->d_name)+1;
+ char *thisfile = xmalloc(len * 2);
+ char *thisfile_info = thisfile + len;
strcat(thisfile, dp->d_name);
/* strip suffixes (so "gcc.info.gz" -> "gcc") */
strip_compression_suffix(thisfile);
+ strcat(thisfile_info, thisfile);
strip_info_suffix(thisfile);
/* compare this file with the file we're looking for */
@@ -109,8 +112,7 @@ matchfile(char **buf, char *name)
/* we found a match! */
matched++;
/* put it in the buffer */
- strncat(Buf, thisfile, 1023-strlen(Buf));
- strncat(Buf, ".info", 1023-strlen(Buf));
+ strncat(Buf, thisfile_info, 1023-strlen(Buf));
/* clean up, and exit the loop */
xfree(thisfile);