** reads the first character of file 'f' and skips an optional BOM mark ** in its beginning plus its first line if it starts with '#'. Returns ** true if it skipped the first line. In any case, '*cp' has the ** first "valid" character of the file (after the optional BOM and ** a first-line comment). */
| 737 | ** a first-line comment). |
| 738 | */ |
| 739 | static int skipcomment (LoadF *lf, int *cp) { |
| 740 | int c = *cp = skipBOM(lf); |
| 741 | if (c == '#') { /* first line is a comment (Unix exec. file)? */ |
| 742 | do { /* skip first line */ |
| 743 | c = getc(lf->f); |
| 744 | } while (c != EOF && c != '\n'); |
| 745 | *cp = getc(lf->f); /* skip end-of-line, if present */ |
| 746 | return 1; /* there was a comment */ |
| 747 | } |
| 748 | else return 0; /* no comment */ |
| 749 | } |
| 750 | |
| 751 | |
| 752 | LUALIB_API int luaL_loadfilex (lua_State *L, const char *filename, |
no test coverage detected