Doesn't seem to break anything…
GE5BQQ52QQ2H2PRP336XDLDKHKUGTBBQH4P4IETXAWZJOZUXUQSQC 3E6FUTT3FSGF4KJPP3NCPOSLDPADXMV3PIL4ZMNI4P6KXBKZIDFAC WNC5SY6P2PBCU62Q2DB5J2M4HPDS5EJY76ZEPHRGGCLJ4BSLBSSQC ASXBSZVXJCWVX5VQSRWXL5BWQ4NA7JLYXP6LWQTRGYW6DC2DZZPQC K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC 3PY3L3A4QRW3Z5Y7SHO4TMVOOP2VNCO27X2MX4DTOP2SADLBQUOAC KEANRIMF5CGFVZ2XJYNFPOAKLXOSOJUOVA73IWBWOG576265ERHAC RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC LIBWXPN6HLJAIGEFJYLOL4HLIUD236U3WM5QPHIZ3DSB4CCUJERAC JQK4F4RTKVQWIF5YKFPH7IHF7UREBOY2NOFQ7J3O44KYPCNHNL5AC GSQ72ULBSL6WBJZUB3GJKAPQDXZIQV7B2TDBA5OP2WVGHVJMCQFQC KSM4H3SBM6FIQTUEGHXXYATJXEOJ4EKUBAFCRMFKSHY7N2HWECRQC R4TQ3M6GL77RCITERZWQKMEMM3YAGJJE5J2MYOQPH26O5STVKSGAC 2U7VFZ3242P22EPRQKCIHFZRRWHHBZGOEEN2WJNMCXV5BEI67NNAC C2PRXJYHDRF2642VDAUY76HJKCPQFGWDI6AM3SMCMYCHGWYDQXQQC JJULXW764V5C2HJKZNWQAEWB6QM5YZADD7ZCE35LYTBFEM6PMYCAC PNRMCHHEBCAUD2XBSSH6JOEQ6A6CFEZBCIX436DVD26DA52OCYTQC 5OVWAD2MGK2NT6Q546KW7HZHELVDBBRC2CQX6VZMZF2YVRC7CPVAC 6LT6USGJOTDMRJGXLAN2NSZXK2GKWEXDKKUV6SVV7ZC6WI6EKMDQC QXQE7C5XDYNF4JSHGDAVMS7HYLOC6YEZFOVFJ3RD7RB6U4AJSFIQC VXSORUQOM2VZA4CAZDC6KPAY373NQIN3UT7CXQXTRCYXO2WM62DAC WQIEW3O4MANA2KKYRUWEZP44KHVJ4RRHEZTDXSF4EDELX66LO26QC LUNOTEIMYZJ7JL5P55GEHUVSDEZMYX3TWYUB2ABRHAYJEWQSSXIAC GUXTGUEMZYBRGV5QUAQSJHG3AOIQDWWCDIMOX4LASFJAZVGL2WQAC UKYGZDI6PYZPXDACCQGVPHANUP5ADCSNROOZIE7LYIZQWSNFHJZAC TW7QOMTSLYPGUUWHGHLY5G5LV6QQRQIKK4BSE64RY7RDGKVDHCEAC SDLKLUNFGVKDS55DDJZCBAVIB7NL3RRYPTACAY65SCUQKV6APFSAC WRDCASRSGOBY5RLVORAMRBSYKEWLLO7VZ4V5NQG2TKBWYNU4OZKAC HVSBRVFZODK4R7P6EJ7Y7AHZDVRSNSFDHIH3M3DDGG5E26Z4KD5AC 2NCKGJDDPPGP2NXYYPEPVRJIIWEP6M7HE6WYMQN3UNNN3C2JIRFQC 25CH7HH4LKXFIZ75YNMXS3TSXO6O27DYSOPLOD45K4OCNFWLS4LQC RGWUYJO74FDGTH22CYSHBKFDGJ4S76WTLIULKPXA4QT5ZCNOB4LQC LABXKXWWQY2V4FUDLGVTDYHXINAP6KRHZDHBQ2FE22FFOEIZPL6QC LPTP6ZL7U4OVXLZ56TJKJ6HENDHE7ITFMFBXC5BKEBVXEGXPW44AC 7AMQN7MITMXBNVDAK5VOXTQ4TZIAOD6ZLOFJG7GQMBTY23Y2BKSAC FMKQARDH6JZ7DUTPPQ6I3LLNQAFGXS36XJCSROUJMEIYQYJDVITQC W5VEC2PBIM5DMU5233HOWAZUEPTGWJRZZIA3H35YYQQW6BTP6XUAC PDOFPXD2X6VI23AHKCGQ5RVDBG74CNP2E3YOHKXLOARHHBXEK3HQC NCDWWDJQLAU5ORSAQGZKJJ5E22VTDGGPJMVVBWQFHQ2B3U3UFHDQC RNIAOCLZYEW5GB7I536HRPYJ7DSDEXITH5RZP5CPKJYHVUTWBKRQC S6ZETU2X3HBTKBDL2KTAMCNPMPGHEZO2JGMILIWETWC7XXRS5RYQC KOMZPTDEZP3P6EWBUECWDY7OWELOUTMAUKNEOJ7PWX5LJBTMRVQAC 3DQXSE4YGFBBDUWK4YEOFWW4UPWILWELFSLP37SL6BERGAZJC5YAC C25ULNTKMNOXT72ERWSFQZQW5E2OIM3TOGAAA33Z7EZQMZHRS2MAC OIAQU4VDTZ3EHBNC7FZIOW2QEQLTDHZ7O46XW2YWM6JRVBC66UPQC PKXXBHS3LWLPZI2QVRX22MSQ4R2626IXRSNHFFYHXYTLJJQU54LQC RYT42Z6CED4KV5CCJ45CHZ3DQGLFMDCVH6CSQZNXOILULDG4MXVQC TP5EDQXPVPTKQYTAMN3VQYHM4WRT2RNIR4EDLWLDAV2OQGKSB6KAC {strncpy( you.your_name, SysEnv.crawl_name.c_str(), kNameLen );you.your_name[ kNameLen - 1 ] = 0;}
you.your_name = SysEnv.crawl_name;
// Restore old name.strncpy(you.your_name, old_name.c_str(), kNameLen);you.your_name[kNameLen - 1] = 0;
you.your_name = old_name;
static bool _read_player_name( char *name, int len,const std::vector<player_save_info> &existing,slider_menu &menu)
static bool _read_player_name(std::string &name,const std::vector<player_save_info> &existing,slider_menu &menu)
line_reader reader(name, len);
char buf[kNameLen];// XXX: Prompt displays garbage otherwise, but don't really know why.// Other places don't do this. --robbuf[0] = '\0';line_reader reader(buf, sizeof(buf));
// Laboriously trim the damn thing.std::string read_name = name;trim_string(read_name);strncpy(name, read_name.c_str(), kNameLen);name[kNameLen - 1] = 0;
trim_string(you.your_name);
return validate_player_name(you.your_name, verbose);}bool validate_player_name(const char* name, bool verbose){
if (stricmp(name, "con") == 0|| stricmp(name, "nul") == 0|| stricmp(name, "prn") == 0|| strnicmp(name, "LPT", 3) == 0)
if (stricmp(name.c_str(), "con") == 0|| stricmp(name.c_str(), "nul") == 0|| stricmp(name.c_str(), "prn") == 0|| strnicmp(name.c_str(), "LPT", 3) == 0)
std::string make_filename( const char *prefix, int level, branch_type branch,level_area_type lt, bool isGhost );
std::string make_filename(std::string prefix, int level, branch_type branch,level_area_type lt, bool isGhost );
std::string make_filename( const char *prefix, int level, branch_type where,level_area_type ltype, bool isGhost )
std::string make_filename(std::string prefix, int level, branch_type where,level_area_type ltype, bool isGhost)
return get_savedir_filename( prefix, "",_get_level_suffix(level, where, ltype),isGhost );
return get_savedir_filename(prefix, "",_get_level_suffix(level, where, ltype),isGhost );
for (int i = 0; i < kNameLen; ++i){if (you.your_name[i] == '\0'){name_overrun = false;break;}}if (name_overrun){fprintf(file, "Player name runs past end of your_name buffer." EOL);you.your_name[kNameLen - 1] = '\0';}name_overrun = true;
char name_your[kNameLen+1];strncpy(name_your, you.your_name, kNameLen);name_your[kNameLen] = 0;if (dump_char( name_your, false ))
if (dump_char(you.your_name, false))