+ /* Now read in the tag/value pairs from the extra substitutions file, if any */
+ while(ifile && fgets(LineBuffer, LINEBUFFERSIZE - 1, Extra_Subs)) {
+ /* Force a trailing null, just in case */
+ LineBuffer[LINEBUFFERSIZE - 1] = '\0';
+ LineBufferLength = strlen(LineBuffer);
+
+ /* Chop trailing control characters */
+ while((LineBufferLength > 0) && (LineBuffer[LineBufferLength-1] < ' ')) {
+ LineBuffer[LineBufferLength - 1] = '\0';
+ LineBufferLength--;
+ }
+
+ /* If it's empty, then try again */
+ if (!*LineBuffer)
+ continue;
+
+ /* Local copy */
+ strcpy(WorkString, LineBuffer);
+ /* Stick a NULL over the = */
+ TempValue = strchr(WorkString, '=');
+ *TempValue++ = '\0';
+
+ /* Copy the tag and value into the holding array */
+ strcpy(TildeSub[TildeSubCount].Tag, WorkString);
+ strcpy(TildeSub[TildeSubCount].Value, TempValue);
+ TildeSubCount++;
+ }
+
+