From 13ba3e75b3f825884ebd612dc187356f34d13d36 Mon Sep 17 00:00:00 2001 From: Pete Batard Date: Thu, 14 Sep 2017 19:06:04 +0100 Subject: [PATCH] [misc] fix VS2017 code analysis warnings * Also set rufus-next to 2.18 --- configure | 20 ++++++++++---------- configure.ac | 2 +- res/appstore/AppxManifest.xml | 2 +- res/appstore/packme.cmd | 2 +- src/checksum.c | 8 ++++---- src/pki.c | 4 ++-- src/registry.h | 20 ++++++++++---------- src/rufus.rc | 10 +++++----- 8 files changed, 34 insertions(+), 34 deletions(-) diff --git a/configure b/configure index 535b2d0ab37..5ad1c2a231c 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for rufus 2.17. +# Generated by GNU Autoconf 2.69 for rufus 2.18. # # Report bugs to . # @@ -580,8 +580,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='rufus' PACKAGE_TARNAME='rufus' -PACKAGE_VERSION='2.17' -PACKAGE_STRING='rufus 2.17' +PACKAGE_VERSION='2.18' +PACKAGE_STRING='rufus 2.18' PACKAGE_BUGREPORT='https://github.com/pbatard/rufus/issues' PACKAGE_URL='https://rufus.akeo.ie' @@ -1228,7 +1228,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures rufus 2.17 to adapt to many kinds of systems. +\`configure' configures rufus 2.18 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1294,7 +1294,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of rufus 2.17:";; + short | recursive ) echo "Configuration of rufus 2.18:";; esac cat <<\_ACEOF @@ -1385,7 +1385,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -rufus configure 2.17 +rufus configure 2.18 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1440,7 +1440,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by rufus $as_me 2.17, which was +It was created by rufus $as_me 2.18, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2303,7 +2303,7 @@ fi # Define the identity of the package. PACKAGE='rufus' - VERSION='2.17' + VERSION='2.18' cat >>confdefs.h <<_ACEOF @@ -4483,7 +4483,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by rufus $as_me 2.17, which was +This file was extended by rufus $as_me 2.18, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -4537,7 +4537,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -rufus config.status 2.17 +rufus config.status 2.18 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 339ab2aab25..72d493ba2fa 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([rufus], [2.17], [https://github.com/pbatard/rufus/issues], [rufus], [https://rufus.akeo.ie]) +AC_INIT([rufus], [2.18], [https://github.com/pbatard/rufus/issues], [rufus], [https://rufus.akeo.ie]) AM_INIT_AUTOMAKE([-Wno-portability foreign no-dist no-dependencies]) AC_CONFIG_SRCDIR([src/rufus.c]) AC_CONFIG_MACRO_DIR([m4]) diff --git a/res/appstore/AppxManifest.xml b/res/appstore/AppxManifest.xml index a85da28c65b..a7ab789287e 100644 --- a/res/appstore/AppxManifest.xml +++ b/res/appstore/AppxManifest.xml @@ -8,7 +8,7 @@ for an interesting struggle, when you also happen to have a comma in one of the fields... --> diff --git a/res/appstore/packme.cmd b/res/appstore/packme.cmd index 11e33f84a27..cd182eb9e96 100644 --- a/res/appstore/packme.cmd +++ b/res/appstore/packme.cmd @@ -1,5 +1,5 @@ @echo off -set VERSION=2.17 +set VERSION=2.18 rem Make sure you don't have anything you don't want included in the package, as anything residing in the rem current directory will be included, including any previous .appx, which makes for nice recursion... diff --git a/src/checksum.c b/src/checksum.c index bcb68693128..27d4443a73f 100644 --- a/src/checksum.c +++ b/src/checksum.c @@ -66,7 +66,7 @@ /* Globals */ char sum_str[CHECKSUM_MAX][65]; uint32_t bufnum, sum_count[CHECKSUM_MAX] = { 16, 20, 32 }; -HANDLE data_ready[CHECKSUM_MAX], thread_ready[CHECKSUM_MAX]; +HANDLE data_ready[CHECKSUM_MAX] = { 0 }, thread_ready[CHECKSUM_MAX] = { 0 }; DWORD read_size[2]; unsigned char ALIGNED(64) buffer[2][BUFFER_SIZE]; @@ -886,7 +886,7 @@ DWORD WINAPI SumThread(void* param) float format_percent = 0.0f; if ((image_path == NULL) || (thread_affinity == NULL)) - goto out; + ExitThread(r); uprintf("\r\nComputing checksum for '%s'...", image_path); @@ -985,8 +985,8 @@ DWORD WINAPI SumThread(void* param) for (i = 0; i < CHECKSUM_MAX; i++) { if (sum_thread[i] != NULL) TerminateThread(sum_thread[i], 1); - CloseHandle(data_ready[i]); - CloseHandle(thread_ready[i]); + safe_closehandle(data_ready[i]); + safe_closehandle(thread_ready[i]); } safe_closehandle(h); PostMessage(hMainDialog, UM_FORMAT_COMPLETED, (WPARAM)FALSE, 0); diff --git a/src/pki.c b/src/pki.c index 838d789c67d..7f7ead8bca8 100644 --- a/src/pki.c +++ b/src/pki.c @@ -258,7 +258,7 @@ char* GetSignatureName(const char* path, const char* country_code) static uint64_t GetRFC3161TimeStamp(PCMSG_SIGNER_INFO pSignerInfo) { BOOL r, found = FALSE; - DWORD n, dwSize; + DWORD n, dwSize = 0; PCRYPT_CONTENT_INFO pCounterSignerInfo = NULL; uint64_t ts = 0ULL; uint8_t *timestamp_token; @@ -318,7 +318,7 @@ static uint64_t GetRFC3161TimeStamp(PCMSG_SIGNER_INFO pSignerInfo) static uint64_t GetNestedRFC3161TimeStamp(PCMSG_SIGNER_INFO pSignerInfo) { BOOL r, found = FALSE; - DWORD n, dwSize; + DWORD n, dwSize = 0; PCRYPT_CONTENT_INFO pNestedSignature = NULL; PCMSG_SIGNER_INFO pNestedSignerInfo = NULL; HCRYPTMSG hMsg = NULL; diff --git a/src/registry.h b/src/registry.h index 81eb68030ac..84043b4ba66 100644 --- a/src/registry.h +++ b/src/registry.h @@ -83,7 +83,7 @@ static __inline BOOL _GetRegistryKey(HKEY key_root, const char* key_name, DWORD break; } - if (i != 0) { + if (i > 0) { // Prefix with "SOFTWARE" if needed if (_strnicmp(key_name, software_prefix, sizeof(software_prefix) - 1) != 0) { if (i + sizeof(software_prefix) >= sizeof(long_key_name)) @@ -146,19 +146,12 @@ static __inline BOOL _SetRegistryKey(HKEY key_root, const char* key_name, DWORD } // Find if we're dealing with a short key - for (i = safe_strlen(key_name); i>0; i--) { + for (i = safe_strlen(key_name); i > 0; i--) { if (key_name[i] == '\\') break; } - if (i == 0) { - // If this is a short key name, store the value under our app sub-hive - if (RegCreateKeyExA(hRoot, "SOFTWARE\\" COMPANY_NAME "\\" APPLICATION_NAME, 0, NULL, 0, - KEY_SET_VALUE | KEY_QUERY_VALUE | KEY_CREATE_SUB_KEY, NULL, &hApp, &dwDisp) != ERROR_SUCCESS) { - hApp = NULL; - goto out; - } - } else { + if (i > 0) { // Prefix with "SOFTWARE" if needed if (_strnicmp(key_name, software_prefix, sizeof(software_prefix) - 1) != 0) { if (i + sizeof(software_prefix) >= sizeof(long_key_name)) @@ -178,6 +171,13 @@ static __inline BOOL _SetRegistryKey(HKEY key_root, const char* key_name, DWORD hApp = NULL; goto out; } + } else { + // This is a short key name, store the value under our app sub-hive + if (RegCreateKeyExA(hRoot, "SOFTWARE\\" COMPANY_NAME "\\" APPLICATION_NAME, 0, NULL, 0, + KEY_SET_VALUE | KEY_QUERY_VALUE | KEY_CREATE_SUB_KEY, NULL, &hApp, &dwDisp) != ERROR_SUCCESS) { + hApp = NULL; + goto out; + } } r = (RegSetValueExA(hApp, &key_name[i], 0, dwType, src, src_size) == ERROR_SUCCESS); diff --git a/src/rufus.rc b/src/rufus.rc index 0bbcaf06e3f..c97f06d11da 100644 --- a/src/rufus.rc +++ b/src/rufus.rc @@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL IDD_DIALOG DIALOGEX 12, 12, 242, 376 STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_ACCEPTFILES -CAPTION "Rufus 2.17.1199" +CAPTION "Rufus 2.18.1200" FONT 8, "Segoe UI Symbol", 400, 0, 0x0 BEGIN LTEXT "Device",IDS_DEVICE_TXT,9,6,200,8 @@ -366,8 +366,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,17,1199,0 - PRODUCTVERSION 2,17,1199,0 + FILEVERSION 2,18,1200,0 + PRODUCTVERSION 2,18,1200,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -384,13 +384,13 @@ BEGIN BEGIN VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)" VALUE "FileDescription", "Rufus" - VALUE "FileVersion", "2.17.1199" + VALUE "FileVersion", "2.18.1200" VALUE "InternalName", "Rufus" VALUE "LegalCopyright", "© 2011-2017 Pete Batard (GPL v3)" VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html" VALUE "OriginalFilename", "rufus.exe" VALUE "ProductName", "Rufus" - VALUE "ProductVersion", "2.17.1199" + VALUE "ProductVersion", "2.18.1200" END END BLOCK "VarFileInfo"