790
791
792
793
794
795
796
797
798
799
800
801
802
803
|
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
|
+
+
+
+
+
|
} else if(*v=='H') {
v=malloc(strtoll(v+1,0,0));
fatal("%p %p :: %lld\n",v,stack_protect_mark,(long long)(((char*)stack_protect_mark)-v));
}
if(v[1]) stack_protect_mark=((char*)stack_protect_mark)+strtoll(v+1,0,0);
}
#endif
const char*log_if_error(const char*t) {
if(t && main_options['v']) fprintf(stderr,"!! %s\n",t);
return t;
}
int main(int argc,char**argv) {
int optind=1;
while(argc>optind && argv[optind][0]=='-') {
int i;
const char*s=argv[optind++];
if(s[1]=='-' && !s[2]) break;
|
837
838
839
840
841
842
843
844
845
846
847
848
849
850
|
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
|
+
+
|
}
init_usercache();
load_classes();
load_level_index();
optionquery[1]=Q_maxObjects;
max_objects=strtoll(xrm_get_resource(resourcedb,optionquery,optionquery,2)?:"",0,0)?:0xFFFF0000L;
annihilate();
optionquery[1]=Q_level;
if(level_ord=strtol(xrm_get_resource(resourcedb,optionquery,optionquery,2)?:"",0,10)) log_if_error(load_level(-level_ord));
if(main_options['x']) {
fprintf(stderr,"Ready for executing SQL statements.\n");
do_sql_mode();
return 0;
}
for(;;) { if(main_options['e']) run_editor(); else run_game(); }
}
|