• speed optimisation: drop SF_FIRST flag, factor out skipping the
UTF-8 BOM instead (UTFMODE has a separate value now for activated during BOM skipping) • parsing a COMSUB now skips UTF-8 BOM, too, but only temporarily
This commit is contained in:
		
							
								
								
									
										9
									
								
								main.c
									
									
									
									
									
								
							
							
						
						
									
										9
									
								
								main.c
									
									
									
									
									
								
							| @@ -33,7 +33,7 @@ | ||||
| #include <locale.h> | ||||
| #endif | ||||
|  | ||||
| __RCSID("$MirOS: src/bin/mksh/main.c,v 1.180 2011/03/13 01:20:21 tg Exp $"); | ||||
| __RCSID("$MirOS: src/bin/mksh/main.c,v 1.181 2011/03/13 16:03:52 tg Exp $"); | ||||
|  | ||||
| extern char **environ; | ||||
|  | ||||
| @@ -663,12 +663,10 @@ shell(Source * volatile s, volatile int toplevel) | ||||
| 	volatile int wastty = s->flags & SF_TTY; | ||||
| 	volatile int attempts = 13; | ||||
| 	volatile int interactive = Flag(FTALKING) && toplevel; | ||||
| 	volatile bool sfirst = true; | ||||
| 	Source *volatile old_source = source; | ||||
| 	int i; | ||||
|  | ||||
| 	/* enable UTF-8 BOM check */ | ||||
| 	s->flags |= SF_FIRST; | ||||
|  | ||||
| 	newenv(E_PARSE); | ||||
| 	if (interactive) | ||||
| 		really_exit = 0; | ||||
| @@ -730,7 +728,8 @@ shell(Source * volatile s, volatile int toplevel) | ||||
| 			j_notify(); | ||||
| 			set_prompt(PS1, s); | ||||
| 		} | ||||
| 		t = compile(s); | ||||
| 		t = compile(s, sfirst); | ||||
| 		sfirst = false; | ||||
| 		if (t != NULL && t->type == TEOF) { | ||||
| 			if (wastty && Flag(FIGNOREEOF) && --attempts > 0) { | ||||
| 				shellf("Use 'exit' to leave mksh\n"); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user