home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume25 / genmake / patch02 < prev    next >
Encoding:
Text File  |  1991-11-12  |  3.5 KB  |  136 lines

  1. Newsgroups: comp.sources.misc
  2. From: kyle@nick.csh.rit.edu (Kyle Saunders)
  3. Subject:  v25i057:  genmake - automatically generate a Makefile, Patch02
  4. Message-ID: <1991Nov13.033828.18075@sparky.imd.sterling.com>
  5. X-Md4-Signature: 0e934d8b64424bb29549a52e19aa5f33
  6. Date: Wed, 13 Nov 1991 03:38:28 GMT
  7. Approved: kent@sparky.imd.sterling.com
  8.  
  9. Submitted-by: kyle@nick.csh.rit.edu (Kyle Saunders)
  10. Posting-number: Volume 25, Issue 57
  11. Archive-name: genmake/patch02
  12. Environment: BSD, SYSVR3
  13. Patch-To: genmake: Volume 25, Issue 34
  14.  
  15. This patch fixes some memory leaks in genmake.c and parse.c.
  16.  
  17.     - Kyle
  18. ---
  19. # This is a shell archive.  Save it in a file, remove anything before
  20. # this line, and then unpack it by entering "sh file".  Note, it may
  21. # create directories; files and directories will be owned by you and
  22. # have default permissions.
  23. #
  24. # This archive contains:
  25. #
  26. #    README_patch
  27. #    patch02
  28. #
  29. echo x - README_patch
  30. sed 's/^X//' >README_patch << 'END-of-README_patch'
  31. X
  32. X    This patch fixes some memory leaks in genmake.c and parse.c.
  33. X
  34. X    - Kyle
  35. X
  36. END-of-README_patch
  37. echo x - patch02
  38. sed 's/^X//' >patch02 << 'END-of-patch02'
  39. X*** genmake.c    Sat Nov  9 18:04:16 1991
  40. X--- genmake.c    Tue Nov 12 00:42:43 1991
  41. X***************
  42. X*** 35,40 ****
  43. X--- 35,41 ----
  44. X      }
  45. X      free(opts);
  46. X      free_list(make_list);
  47. X+     free(make_list);
  48. X      return(0);
  49. X  }
  50. X  
  51. X*** parse.c    Sat Nov  9 18:04:16 1991
  52. X--- parse.c    Tue Nov 12 00:34:36 1991
  53. X***************
  54. X*** 116,129 ****
  55. X      CPPN        **cpp_stack;
  56. X      SYMENT        **symtab;
  57. X  
  58. X-     cpp_stack = (CPPN **)malloc(sizeof(CPPN *));
  59. X-     *cpp_stack = NULL;
  60. X-     symtab = (SYMENT **)malloc(sizeof(SYMENT *));
  61. X-     *symtab = NULL;
  62. X      if ((fp = fopen(filename,"r")) == NULL) {
  63. X          fprintf(stderr,"depends():  can't open file %s\n",filename);
  64. X          return(0);
  65. X      }
  66. X      strcpy(name,"\"");
  67. X      strcat(name,sname);
  68. X      strcat(name,"\"");
  69. X--- 116,129 ----
  70. X      CPPN        **cpp_stack;
  71. X      SYMENT        **symtab;
  72. X  
  73. X      if ((fp = fopen(filename,"r")) == NULL) {
  74. X          fprintf(stderr,"depends():  can't open file %s\n",filename);
  75. X          return(0);
  76. X      }
  77. X+     cpp_stack = (CPPN **)malloc(sizeof(CPPN *));
  78. X+     *cpp_stack = NULL;
  79. X+     symtab = (SYMENT **)malloc(sizeof(SYMENT *));
  80. X+     *symtab = NULL;
  81. X      strcpy(name,"\"");
  82. X      strcat(name,sname);
  83. X      strcat(name,"\"");
  84. X***************
  85. X*** 132,146 ****
  86. X--- 132,149 ----
  87. X          if (tok[0] == '#' && sp == 0) {
  88. X              if ((cp = gettok(fp,buf,tok,cp,cpp_stack,symtab)) < 0) {
  89. X                  fclose(fp);
  90. X+                 cpp_rel(cpp_stack,symtab);
  91. X                  return(0);
  92. X              }
  93. X              if (!strcmp("include",tok)) {
  94. X                  if ((cp = gettok(fp,buf,tok,cp,cpp_stack,symtab)) < 0) {
  95. X                      fclose(fp);
  96. X+                     cpp_rel(cpp_stack,symtab);
  97. X                      return(0);
  98. X                  }
  99. X                  if (!strcmp(name,tok)) {
  100. X                      fclose(fp);
  101. X+                     cpp_rel(cpp_stack,symtab);
  102. X                      return(1);
  103. X                  }
  104. X              }
  105. X***************
  106. X*** 147,152 ****
  107. X--- 150,156 ----
  108. X          }
  109. X      }
  110. X      fclose(fp);
  111. X+     cpp_rel(cpp_stack,symtab);
  112. X      return(0);
  113. X  }
  114. X  
  115. X*** version.h    Tue Nov 12 00:37:00 1991
  116. X--- version.h    Tue Nov 12 00:38:03 1991
  117. X***************
  118. X*** 1,3 ****
  119. X  /* version.h */
  120. X  
  121. X! #define BANNER    "Genmake v1.03 pl1  10/30/91  Copyright(c) 1990, 1991 by Kyle Saunders"
  122. X--- 1,3 ----
  123. X  /* version.h */
  124. X  
  125. X! #define BANNER    "Genmake v1.03 pl2  11/12/91  Copyright(c) 1990, 1991 by Kyle Saunders"
  126. END-of-patch02
  127. exit
  128.  
  129.  
  130. exit 0 # Just in case...
  131. -- 
  132. Kent Landfield                   INTERNET: kent@sparky.IMD.Sterling.COM
  133. Sterling Software, IMD           UUCP:     uunet!sparky!kent
  134. Phone:    (402) 291-8300         FAX:      (402) 291-4362
  135. Please send comp.sources.misc-related mail to kent@uunet.uu.net.
  136.