MCPcopy Create free account
hub / github.com/dhewm/dhewm3 / ScrubSaveGameFileName

Method ScrubSaveGameFileName

neo/framework/Session.cpp:1891–1915  ·  view source on GitHub ↗

=============== idSessionLocal::ScrubSaveGameFileName Turns a bad file name into a good one or your money back =============== */

Source from the content-addressed store, hash-verified

1889===============
1890*/
1891void idSessionLocal::ScrubSaveGameFileName( idStr &saveFileName ) const {
1892 int i;
1893 idStr inFileName;
1894
1895 inFileName = saveFileName;
1896 inFileName.RemoveColors();
1897 inFileName.StripFileExtension();
1898
1899 saveFileName.Clear();
1900
1901 int len = inFileName.Length();
1902 for ( i = 0; i < len; i++ ) {
1903 if ( strchr( "',.~!@#$%^&*()[]{}<>\\|/=?+;:-\'\"", inFileName[i] ) ) {
1904 // random junk
1905 saveFileName += '_';
1906 } else if ( (const unsigned char)inFileName[i] >= 128 ) {
1907 // high ascii chars
1908 saveFileName += '_';
1909 } else if ( inFileName[i] == ' ' ) {
1910 saveFileName += '_';
1911 } else {
1912 saveFileName += inFileName[i];
1913 }
1914 }
1915}
1916
1917/*
1918===============

Callers 1

Calls 3

RemoveColorsMethod · 0.45
ClearMethod · 0.45
LengthMethod · 0.45

Tested by

no test coverage detected