term->cfg is now a full copy of the Config structure, not a pointer;
[u/mdw/putty] / window.c
index fd21911..272a527 100644 (file)
--- a/window.c
+++ b/window.c
@@ -87,7 +87,6 @@ static void init_fonts(int, int);
 static void another_font(int);
 static void deinit_fonts(void);
 static void set_input_locale(HKL);
-static int do_mouse_wheel_msg(UINT message, WPARAM wParam, LPARAM lParam);
 
 static int is_full_screen(void);
 static void make_full_screen(void);
@@ -330,7 +329,8 @@ int WINAPI WinMain(HINSTANCE inst, HINSTANCE prev, LPSTR cmdline, int show)
                char *p = argv[i];
                int ret;
 
-               ret = cmdline_process_param(p, i+1<argc?argv[i+1]:NULL, 1);
+               ret = cmdline_process_param(p, i+1<argc?argv[i+1]:NULL,
+                                           1, &cfg);
                if (ret == -2) {
                    cmdline_error("option \"%s\" requires an argument", p);
                } else if (ret == 2) {
@@ -366,7 +366,7 @@ int WINAPI WinMain(HINSTANCE inst, HINSTANCE prev, LPSTR cmdline, int show)
                         * argument, so that it will be deferred
                         * until it's a good moment to run it.
                         */
-                       int ret = cmdline_process_param("-P", p, 1);
+                       int ret = cmdline_process_param("-P", p, 1, &cfg);
                        assert(ret == 2);
                    } else if (!strncmp(q, "telnet:", 7)) {
                        /*
@@ -412,7 +412,7 @@ int WINAPI WinMain(HINSTANCE inst, HINSTANCE prev, LPSTR cmdline, int show)
            }
        }
 
-       cmdline_run_saved();
+       cmdline_run_saved(&cfg);
 
        if (!*cfg.host && !do_config()) {
            WSACleanup();
@@ -1779,8 +1779,8 @@ static LRESULT CALLBACK WndProc(HWND hwnd, UINT message,
                cfgtopalette();
                init_palette();
 
-               /* Give terminal a heads-up on miscellaneous stuff */
-               term_reconfig(term);
+               /* Pass new config data to the terminal */
+               term_reconfig(term, &cfg);
 
                /* Screen size changed ? */
                if (cfg.height != prev_cfg.height ||