[PATCH setup 11/16] Drop hinstance global
Jon Turney
jon.turney@dronecode.org.uk
Fri Mar 8 18:34:30 GMT 2024
We do not need to retain the hInstance value passed into WinMain(), as
it's always available as GetModuleHandle(NULL).
Note that DialogBox() accepts NULL meaning "the current executable" in
any case.
Future work: there's still some completely unnecessary storing it in
class Window and passing it around.
---
dialog.h | 3 ---
gui/SitePage.cc | 3 +--
install.cc | 2 +-
main.cc | 5 +----
msg.cc | 5 ++---
netio.cc | 10 +++++-----
6 files changed, 10 insertions(+), 18 deletions(-)
diff --git a/dialog.h b/dialog.h
index 63c98ee..ebbf661 100644
--- a/dialog.h
+++ b/dialog.h
@@ -20,9 +20,6 @@
#include "win32.h"
-/* global instance for the application; set in main.cc */
-extern HINSTANCE hinstance;
-
/* used by main.cc to select the next do_* function */
extern int next_dialog;
diff --git a/gui/SitePage.cc b/gui/SitePage.cc
index 1cdb1bf..9dacebc 100644
--- a/gui/SitePage.cc
+++ b/gui/SitePage.cc
@@ -367,8 +367,7 @@ int check_dropped_mirrors (HWND h)
{
if (unattended_mode)
return CACHE_ACCEPT_WARN;
- return DialogBox (hinstance, MAKEINTRESOURCE (IDD_DROPPED), h,
- drop_proc);
+ return DialogBox (NULL, MAKEINTRESOURCE (IDD_DROPPED), h, drop_proc);
}
return CACHE_ACCEPT_NOWARN;
}
diff --git a/install.cc b/install.cc
index 628dbd0..001529b 100644
--- a/install.cc
+++ b/install.cc
@@ -660,7 +660,7 @@ Installer::_installOne (packagemeta &pkgm,
dlg_data.processlist = plm.c_str ();
dlg_data.iteration = iteration;
- rc = DialogBoxParam(hinstance, MAKEINTRESOURCE (IDD_FILE_INUSE), owner, FileInuseDlgProc, (LPARAM)&dlg_data);
+ rc = DialogBoxParam(NULL, MAKEINTRESOURCE (IDD_FILE_INUSE), owner, FileInuseDlgProc, (LPARAM)&dlg_data);
}
else
{
diff --git a/main.cc b/main.cc
index 4c391f5..8a68232 100644
--- a/main.cc
+++ b/main.cc
@@ -86,8 +86,6 @@ extern char **_argv;
bool is_new_install = false;
std::string SetupIniDir;
-HINSTANCE hinstance;
-
static StringChoiceOption::StringChoices symlink_types({
{"native", SymlinkTypeNative},
{"lnk", SymlinkTypeShortcut},
@@ -176,7 +174,7 @@ main_display ()
}
// Init window class lib
- Window::SetAppInstance (hinstance);
+ Window::SetAppInstance (GetModuleHandle(NULL));
// Create pages
Splash.Create ();
@@ -221,7 +219,6 @@ int WINAPI
WinMain (HINSTANCE h,
HINSTANCE hPrevInstance, LPSTR command_line, int cmd_show)
{
- hinstance = h;
// Make sure Windows DLLs only delay-load further DLLs from System32
typedef BOOL (WINAPI *PFNSETDEFAULTDLLDIRECTORIES)(DWORD);
diff --git a/msg.cc b/msg.cc
index 8e344ff..b53df86 100644
--- a/msg.cc
+++ b/msg.cc
@@ -23,7 +23,6 @@
#include <stdio.h>
#include <stdarg.h>
-#include "dialog.h"
#include "state.h"
#include "String++.h"
#include "resource.h"
@@ -66,7 +65,7 @@ mbox (HWND owner, const char *buf, const char *name, int type)
}
char caption[32];
- LoadString (hinstance, IDS_MBOX_CAPTION, caption, sizeof (caption));
+ LoadString (GetModuleHandle(NULL), IDS_MBOX_CAPTION, caption, sizeof (caption));
return MessageBox (owner, buf, caption, type);
}
@@ -76,7 +75,7 @@ mbox (HWND owner, const char *name, int type, int id, va_list args)
{
char buf[1000], fmt[1000];
- if (LoadString (hinstance, id, fmt, sizeof (fmt)) <= 0)
+ if (LoadString (GetModuleHandle(NULL), id, fmt, sizeof (fmt)) <= 0)
ExitProcess (0);
vsnprintf (buf, 1000, fmt, args);
diff --git a/netio.cc b/netio.cc
index 631532a..d6bfc24 100644
--- a/netio.cc
+++ b/netio.cc
@@ -185,9 +185,9 @@ auth_proc (HWND h, UINT message, WPARAM wParam, LPARAM lParam)
}
static int
-auth_common (HINSTANCE h, int id, HWND owner)
+auth_common (int id, HWND owner)
{
- return DialogBox (h, MAKEINTRESOURCE (id), owner, auth_proc);
+ return DialogBox (NULL, MAKEINTRESOURCE (id), owner, auth_proc);
}
int
@@ -195,7 +195,7 @@ NetIO::get_auth (HWND owner)
{
user = &net_user;
passwd = &net_passwd;
- return auth_common (hinstance, IDD_NET_AUTH, owner);
+ return auth_common (IDD_NET_AUTH, owner);
}
int
@@ -203,7 +203,7 @@ NetIO::get_proxy_auth (HWND owner)
{
user = &net_proxy_user;
passwd = &net_proxy_passwd;
- return auth_common (hinstance, IDD_PROXY_AUTH, owner);
+ return auth_common (IDD_PROXY_AUTH, owner);
}
int
@@ -221,7 +221,7 @@ NetIO::get_ftp_auth (HWND owner)
}
user = &net_ftp_user;
passwd = &net_ftp_passwd;
- return auth_common (hinstance, IDD_FTP_AUTH, owner);
+ return auth_common (IDD_FTP_AUTH, owner);
}
const char *
--
2.43.0
More information about the Cygwin-apps
mailing list