- switch (setjmp(env)) {
- case OK:
- if (fname) {
- fp = mhl_action ? (*mhl_action) (fname) :
- fopen(fname, "r");
- if (fp == NULL) {
- advise(fname, "unable to open");
- exitstat++;
- return;
- }
- } else {
- fname = "(stdin)";
- fp = stdin;
- }
- SIGNAL(SIGINT, intrser);
- mhlfile(fp, fname, ofilen, ofilec);
- /* FALL THROUGH! */
- default:
- SIGNAL(SIGINT, SIG_IGN);
- if (mhl_action == NULL && fp != stdin)
- fclose(fp);
- if (holder.c_text) {
- free(holder.c_text);
- holder.c_text = NULL;
+ if (fname) {
+ fp = fopen(fname, "r");
+ if (fp == NULL) {
+ advise(fname, "unable to open");
+ exitstat++;
+ return;