rr@chmsr (Richard Robison) (01/01/89)
I would have sent this to Andrew, but I can't find his e-mail address. -Richard Problem: On a Sun 3 running SunOS 4.0 changes made during spell check session will not save. Fix: I noticed Andrew was fclose'ing a popen'ed FILE pointer. Changing fclose to pclose fixes the problem. The patch is listed below. *** doc_correct.c.orig Wed Dec 7 16:50:19 1988 --- doc_correct.c Wed Dec 7 16:50:31 1988 *************** *** 23,29 **** if (strcmp (bad_words[loop], good_words[loop]) != 0) fprintf (ex_ptr, "%%s/\\<%s\\>/%s/g\n", bad_words[loop], good_words[loop]); ! fprintf (ex_ptr, "w\nq\n"); fclose (ex_ptr); addstr (" done"); refresh (); } --- 23,29 ---- if (strcmp (bad_words[loop], good_words[loop]) != 0) fprintf (ex_ptr, "%%s/\\<%s\\>/%s/g\n", bad_words[loop], good_words[loop]); ! fprintf (ex_ptr, "w\nq\n"); pclose (ex_ptr); addstr (" done"); refresh (); } *** spell.c.orig Wed Dec 7 17:56:31 1988 --- spell.c Wed Dec 7 17:56:44 1988 *************** *** 57,63 **** else bad_words[i][strlen (bad_words[i]) - 1] = '\0'; } ! fclose (spell_out); if ((num_bad = i) >= MAX_WORDS) { getyx (stdscr, ypos, xpos); --- 57,63 ---- else bad_words[i][strlen (bad_words[i]) - 1] = '\0'; } ! pclose (spell_out); if ((num_bad = i) >= MAX_WORDS) { getyx (stdscr, ypos, xpos); Richard Robison UUCP: rr@chmsr.UUCP {backbones}!gatech!chmsr!rr INTERNET: rr@chmsr.gatech.edu