mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-07-02 20:12:48 -05:00
Giant const-correctness patch of doom!
Having found a lot of unfixed constness issues in recent development, I thought perhaps it was time to get proactive, so I compiled the whole codebase with -Wwrite-strings. That turned up a huge load of const problems, which I've fixed in this commit: the Unix build now goes cleanly through with -Wwrite-strings, and the Windows build is as close as I could get it (there are some lingering issues due to occasional Windows API functions like AcquireCredentialsHandle not having the right constness). Notable fallout beyond the purely mechanical changing of types: - the stuff saved by cmdline_save_param() is now explicitly dupstr()ed, and freed in cmdline_run_saved. - I couldn't make both string arguments to cmdline_process_param() const, because it intentionally writes to one of them in the case where it's the argument to -pw (in the vain hope of being at least slightly friendly to 'ps'), so elsewhere I had to temporarily dupstr() something for the sake of passing it to that function - I had to invent a silly parallel version of const_cmp() so I could pass const string literals in to lookup functions. - stripslashes() in pscp.c and psftp.c has the annoying strchr nature
This commit is contained in:
@ -70,7 +70,7 @@ static int initial_menuitems_count;
|
||||
/*
|
||||
* Print a modal (Really Bad) message box and perform a fatal exit.
|
||||
*/
|
||||
void modalfatalbox(char *fmt, ...)
|
||||
void modalfatalbox(const char *fmt, ...)
|
||||
{
|
||||
va_list ap;
|
||||
char *buf;
|
||||
@ -594,7 +594,7 @@ static int CALLBACK KeyListProc(HWND hwnd, UINT msg,
|
||||
case WM_HELP:
|
||||
{
|
||||
int id = ((LPHELPINFO)lParam)->iCtrlId;
|
||||
char *topic = NULL;
|
||||
const char *topic = NULL;
|
||||
switch (id) {
|
||||
case 100: topic = WINHELP_CTX_pageant_keylist; break;
|
||||
case 101: topic = WINHELP_CTX_pageant_addkey; break;
|
||||
@ -989,7 +989,7 @@ static LRESULT CALLBACK WndProc(HWND hwnd, UINT message,
|
||||
/*
|
||||
* Fork and Exec the command in cmdline. [DBW]
|
||||
*/
|
||||
void spawn_cmd(char *cmdline, char * args, int show)
|
||||
void spawn_cmd(const char *cmdline, const char *args, int show)
|
||||
{
|
||||
if (ShellExecute(NULL, _T("open"), cmdline,
|
||||
args, NULL, show) <= (HINSTANCE) 32) {
|
||||
@ -1023,7 +1023,7 @@ int WINAPI WinMain(HINSTANCE inst, HINSTANCE prev, LPSTR cmdline, int show)
|
||||
{
|
||||
WNDCLASS wndclass;
|
||||
MSG msg;
|
||||
char *command = NULL;
|
||||
const char *command = NULL;
|
||||
int added_keys = 0;
|
||||
int argc, i;
|
||||
char **argv, **argstart;
|
||||
|
Reference in New Issue
Block a user