Skip to content

Commit 3665cb4

Browse files
committed
Update UTF16 chars, Update solutions, Fix SAL warnings
1 parent 194b1b0 commit 3665cb4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+325
-221
lines changed

ProcessHacker/ProcessHacker.vcxproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@
104104
<TreatWarningAsError>true</TreatWarningAsError>
105105
<MultiProcessorCompilation>true</MultiProcessorCompilation>
106106
<StringPooling>true</StringPooling>
107+
<ControlFlowGuard>Guard</ControlFlowGuard>
107108
</ClCompile>
108109
<Link>
109110
<AdditionalDependencies>aclui.lib;comctl32.lib;dnsapi.lib;iphlpapi.lib;noarg.obj;noenv.obj;ntdll.lib;phlib.lib;shlwapi.lib;userenv.lib;uxtheme.lib;version.lib;wbemuuid.lib;windowscodecs.lib;winhttp.lib;winsta.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -137,6 +138,7 @@
137138
<TreatWarningAsError>true</TreatWarningAsError>
138139
<MultiProcessorCompilation>true</MultiProcessorCompilation>
139140
<StringPooling>true</StringPooling>
141+
<ControlFlowGuard>Guard</ControlFlowGuard>
140142
</ClCompile>
141143
<Link>
142144
<AdditionalDependencies>aclui.lib;comctl32.lib;dnsapi.lib;iphlpapi.lib;noarg.obj;noenv.obj;ntdll.lib;phlib.lib;shlwapi.lib;userenv.lib;uxtheme.lib;version.lib;wbemuuid.lib;windowscodecs.lib;winhttp.lib;winsta.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
@@ -166,7 +168,6 @@
166168
<PreprocessorDefinitions>_PHLIB_;_PHAPP_;_WINDOWS;HAVE_CONFIG_H;WIN32;NDEBUG;%(PreprocessorDefinitions);$(ExternalCompilerOptions)</PreprocessorDefinitions>
167169
<StringPooling>true</StringPooling>
168170
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
169-
<BufferSecurityCheck>false</BufferSecurityCheck>
170171
<FunctionLevelLinking>true</FunctionLevelLinking>
171172
<WarningLevel>Level3</WarningLevel>
172173
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
@@ -206,7 +207,6 @@
206207
<PreprocessorDefinitions>_PHLIB_;_PHAPP_;_WINDOWS;HAVE_CONFIG_H;WIN64;NDEBUG;%(PreprocessorDefinitions);$(ExternalCompilerOptions)</PreprocessorDefinitions>
207208
<StringPooling>true</StringPooling>
208209
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
209-
<BufferSecurityCheck>false</BufferSecurityCheck>
210210
<FunctionLevelLinking>true</FunctionLevelLinking>
211211
<WarningLevel>Level3</WarningLevel>
212212
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

ProcessHacker/actions.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1513,8 +1513,8 @@ BOOLEAN PhUiDebugProcess(
15131513
{
15141514
if (debugger = PH_AUTO(PhQueryRegistryString(keyHandle, L"Debugger")))
15151515
{
1516-
if (PhSplitStringRefAtChar(&debugger->sr, '"', &dummy, &commandPart) &&
1517-
PhSplitStringRefAtChar(&commandPart, '"', &commandPart, &dummy))
1516+
if (PhSplitStringRefAtChar(&debugger->sr, L'"', &dummy, &commandPart) &&
1517+
PhSplitStringRefAtChar(&commandPart, L'"', &commandPart, &dummy))
15181518
{
15191519
DebuggerCommand = PhCreateString2(&commandPart);
15201520
}
@@ -1531,9 +1531,9 @@ BOOLEAN PhUiDebugProcess(
15311531

15321532
PhInitializeStringBuilder(&commandLineBuilder, DebuggerCommand->Length + 30);
15331533

1534-
PhAppendCharStringBuilder(&commandLineBuilder, '"');
1534+
PhAppendCharStringBuilder(&commandLineBuilder, L'"');
15351535
PhAppendStringBuilder(&commandLineBuilder, &DebuggerCommand->sr);
1536-
PhAppendCharStringBuilder(&commandLineBuilder, '"');
1536+
PhAppendCharStringBuilder(&commandLineBuilder, L'"');
15371537
PhAppendFormatStringBuilder(&commandLineBuilder, L" -p %lu", HandleToUlong(Process->ProcessId));
15381538

15391539
status = PhCreateProcessWin32(

ProcessHacker/appsup.c

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -489,7 +489,7 @@ BOOLEAN PhaGetProcessKnownCommandLine(
489489

490490
// Get the DLL name part.
491491

492-
while (i < CommandLine->Length / sizeof(WCHAR) && CommandLine->Buffer[i] == ' ')
492+
while (i < CommandLine->Length / sizeof(WCHAR) && CommandLine->Buffer[i] == L' ')
493493
i++;
494494

495495
dllName = PhParseCommandLinePart(&CommandLine->sr, &i);
@@ -501,7 +501,7 @@ BOOLEAN PhaGetProcessKnownCommandLine(
501501

502502
// The procedure name begins after the last comma.
503503

504-
if (!PhSplitStringRefAtLastChar(&dllName->sr, ',', &dllNamePart, &procedureNamePart))
504+
if (!PhSplitStringRefAtLastChar(&dllName->sr, L',', &dllNamePart, &procedureNamePart))
505505
return FALSE;
506506

507507
dllName = PH_AUTO(PhCreateString2(&dllNamePart));
@@ -553,7 +553,7 @@ BOOLEAN PhaGetProcessKnownCommandLine(
553553

554554
// Get the argument part.
555555

556-
while (i < (ULONG)CommandLine->Length / sizeof(WCHAR) && CommandLine->Buffer[i] == ' ')
556+
while (i < (ULONG)CommandLine->Length / sizeof(WCHAR) && CommandLine->Buffer[i] == L' ')
557557
i++;
558558

559559
argPart = PhParseCommandLinePart(&CommandLine->sr, &i);
@@ -703,11 +703,11 @@ PPH_STRING PhEscapeStringForDelimiter(
703703
length = String->Length / sizeof(WCHAR);
704704
PhInitializeStringBuilder(&stringBuilder, String->Length / sizeof(WCHAR) * 3);
705705

706-
temp[0] = '\\';
706+
temp[0] = L'\\';
707707

708708
for (i = 0; i < length; i++)
709709
{
710-
if (String->Buffer[i] == '\\' || String->Buffer[i] == Delimiter)
710+
if (String->Buffer[i] == L'\\' || String->Buffer[i] == Delimiter)
711711
{
712712
temp[1] = String->Buffer[i];
713713
PhAppendStringBuilderEx(&stringBuilder, temp, 4);
@@ -735,7 +735,7 @@ PPH_STRING PhUnescapeStringForDelimiter(
735735

736736
for (i = 0; i < length; i++)
737737
{
738-
if (String->Buffer[i] == '\\')
738+
if (String->Buffer[i] == L'\\')
739739
{
740740
if (i != length - 1)
741741
{
@@ -786,20 +786,20 @@ VOID PhShellExecuteUserString(
786786
return;
787787
}
788788

789-
// Get the execute command.
789+
// Get the execute command. (dmex)
790790
executeString = PhGetStringSetting(Setting);
791791

792-
// Expand environment strings.
792+
// Expand environment strings. (dmex)
793793
PhMoveReference(&executeString, PhExpandEnvironmentStrings(&executeString->sr));
794794

795795
// Make sure the user executable string is absolute. We can't use RtlDetermineDosPathNameType_U
796-
// here because the string may be a URL.
797-
if (PhFindCharInString(executeString, 0, ':') == -1)
796+
// here because the string may be a URL. (dmex)
797+
if (PhFindCharInString(executeString, 0, L':') == -1)
798798
{
799799
INT stringArgCount;
800800
PWSTR* stringArgList;
801801

802-
// (dmex) HACK: Escape the individual executeString components.
802+
// HACK: Escape the individual executeString components. (dmex)
803803
if ((stringArgList = CommandLineToArgvW(executeString->Buffer, &stringArgCount)) && stringArgCount == 2)
804804
{
805805
PPH_STRING fileName = PhCreateString(stringArgList[0]);
@@ -1069,9 +1069,9 @@ PPH_STRING PhGetPhVersion(
10691069
PH_FORMAT format[5];
10701070

10711071
PhInitFormatU(&format[0], PHAPP_VERSION_MAJOR);
1072-
PhInitFormatC(&format[1], '.');
1072+
PhInitFormatC(&format[1], L'.');
10731073
PhInitFormatU(&format[2], PHAPP_VERSION_MINOR);
1074-
PhInitFormatC(&format[3], '.');
1074+
PhInitFormatC(&format[3], L'.');
10751075
PhInitFormatU(&format[4], PHAPP_VERSION_REVISION);
10761076

10771077
return PhFormat(format, 5, 16);
@@ -1173,7 +1173,7 @@ VOID PhpAppendCommandLineArgument(
11731173
temp = PhEscapeCommandLinePart(Value);
11741174
PhAppendStringBuilder(StringBuilder, &temp->sr);
11751175
PhDereferenceObject(temp);
1176-
PhAppendCharStringBuilder(StringBuilder, '\"');
1176+
PhAppendCharStringBuilder(StringBuilder, L'\"');
11771177
}
11781178

11791179
BOOLEAN PhShellProcessHackerEx(
@@ -1285,11 +1285,11 @@ BOOLEAN PhShellProcessHackerEx(
12851285
// Add user-specified parameters last so they can override the propagated parameters.
12861286
if (Parameters)
12871287
{
1288-
PhAppendCharStringBuilder(&sb, ' ');
1288+
PhAppendCharStringBuilder(&sb, L' ');
12891289
PhAppendStringBuilder2(&sb, Parameters);
12901290
}
12911291

1292-
if (sb.String->Length != 0 && sb.String->Buffer[0] == ' ')
1292+
if (sb.String->Length != 0 && sb.String->Buffer[0] == L' ')
12931293
parameters = sb.String->Buffer + 1;
12941294
else
12951295
parameters = sb.String->Buffer;

ProcessHacker/chdlg.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ INT_PTR CALLBACK PhpChoiceDlgProc(
168168
{
169169
PPH_STRING unescaped;
170170

171-
unescaped = PhUnescapeStringForDelimiter(savedChoice, '\\');
171+
unescaped = PhUnescapeStringForDelimiter(savedChoice, L'\\');
172172
ComboBox_InsertString(comboBoxHandle, -1, unescaped->Buffer);
173173
PhDereferenceObject(unescaped);
174174
}
@@ -311,7 +311,7 @@ INT_PTR CALLBACK PhpChoiceDlgProc(
311311

312312
if (selectedChoice->Length != 0)
313313
{
314-
escaped = PhEscapeStringForDelimiter(selectedChoice, '\\');
314+
escaped = PhEscapeStringForDelimiter(selectedChoice, L'\\');
315315
PhAppendStringBuilder(&savedChoices, &escaped->sr);
316316
PhDereferenceObject(escaped);
317317
PhAppendStringBuilder2(&savedChoices, L"\\s");
@@ -333,7 +333,7 @@ INT_PTR CALLBACK PhpChoiceDlgProc(
333333
continue;
334334
}
335335

336-
escaped = PhEscapeStringForDelimiter(choice, '\\');
336+
escaped = PhEscapeStringForDelimiter(choice, L'\\');
337337
PhAppendStringBuilder(&savedChoices, &escaped->sr);
338338
PhDereferenceObject(escaped);
339339
PhDereferenceObject(choice);

ProcessHacker/colmgr.c

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ PPH_CM_COLUMN PhCmCreateColumn(
101101
tnColumn.Text = Column->Text;
102102
tnColumn.Width = Column->Width;
103103
tnColumn.Alignment = Column->Alignment;
104-
tnColumn.DisplayIndex = Column->Visible ? Column->DisplayIndex : -1;
104+
tnColumn.DisplayIndex = Column->Visible ? Column->DisplayIndex : ULONG_MAX;
105105
tnColumn.TextFlags = Column->TextFlags;
106106
TreeNew_AddColumn(Manager->Handle, &tnColumn);
107107

@@ -143,7 +143,7 @@ VOID PhCmSetNotifyPlugin(
143143
}
144144
else
145145
{
146-
if (PhFindItemList(Manager->NotifyList, Plugin) != -1)
146+
if (PhFindItemList(Manager->NotifyList, Plugin) != ULONG_MAX)
147147
return;
148148
}
149149

@@ -339,10 +339,10 @@ BOOLEAN PhCmLoadSettingsEx(
339339

340340
remainingColumnPart = *Settings;
341341

342-
if (remainingColumnPart.Length != 0 && remainingColumnPart.Buffer[0] == '@')
342+
if (remainingColumnPart.Length != 0 && remainingColumnPart.Buffer[0] == L'@')
343343
{
344344
PhSkipStringRef(&remainingColumnPart, sizeof(WCHAR));
345-
PhSplitStringRefAtChar(&remainingColumnPart, '|', &scalePart, &remainingColumnPart);
345+
PhSplitStringRefAtChar(&remainingColumnPart, L'|', &scalePart, &remainingColumnPart);
346346

347347
if (scalePart.Length == 0 || !PhStringToInteger64(&scalePart, 10, &integer))
348348
goto CleanupExit;
@@ -361,18 +361,18 @@ BOOLEAN PhCmLoadSettingsEx(
361361
ULONG displayIndex;
362362
ULONG width;
363363

364-
PhSplitStringRefAtChar(&remainingColumnPart, '|', &columnPart, &remainingColumnPart);
364+
PhSplitStringRefAtChar(&remainingColumnPart, L'|', &columnPart, &remainingColumnPart);
365365

366366
if (columnPart.Length != 0)
367367
{
368368
// Id
369369

370-
PhSplitStringRefAtChar(&columnPart, ',', &valuePart, &columnPart);
370+
PhSplitStringRefAtChar(&columnPart, L',', &valuePart, &columnPart);
371371

372372
if (valuePart.Length == 0)
373373
goto CleanupExit;
374374

375-
if (valuePart.Buffer[0] == '+')
375+
if (valuePart.Buffer[0] == L'+')
376376
{
377377
PH_STRINGREF pluginName;
378378
ULONG subId;
@@ -402,7 +402,7 @@ BOOLEAN PhCmLoadSettingsEx(
402402

403403
// Display Index
404404

405-
PhSplitStringRefAtChar(&columnPart, ',', &valuePart, &columnPart);
405+
PhSplitStringRefAtChar(&columnPart, L',', &valuePart, &columnPart);
406406

407407
if (!(Flags & PH_CM_COLUMN_WIDTHS_ONLY))
408408
{
@@ -416,7 +416,7 @@ BOOLEAN PhCmLoadSettingsEx(
416416
if (valuePart.Length != 0)
417417
goto CleanupExit;
418418

419-
displayIndex = -1;
419+
displayIndex = ULONG_MAX;
420420
}
421421

422422
// Width
@@ -525,16 +525,16 @@ BOOLEAN PhCmLoadSettingsEx(
525525

526526
if (SortSettings && SortSettings->Length != 0)
527527
{
528-
PhSplitStringRefAtChar(SortSettings, ',', &valuePart, &subPart);
528+
PhSplitStringRefAtChar(SortSettings, L',', &valuePart, &subPart);
529529

530530
if (valuePart.Length != 0 && subPart.Length != 0)
531531
{
532532
ULONG sortColumn;
533533
PH_SORT_ORDER sortOrder;
534534

535-
sortColumn = -1;
535+
sortColumn = ULONG_MAX;
536536

537-
if (valuePart.Buffer[0] == '+')
537+
if (valuePart.Buffer[0] == L'+')
538538
{
539539
PH_STRINGREF pluginName;
540540
ULONG subId;
@@ -558,7 +558,7 @@ BOOLEAN PhCmLoadSettingsEx(
558558
PhStringToInteger64(&subPart, 10, &integer);
559559
sortOrder = (PH_SORT_ORDER)integer;
560560

561-
if (sortColumn != -1 && sortOrder <= DescendingSortOrder)
561+
if (sortColumn != ULONG_MAX && sortOrder <= DescendingSortOrder)
562562
{
563563
TreeNew_SetSort(TreeNewHandle, sortColumn, sortOrder);
564564
}

ProcessHacker/colsetmgr.c

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ PPH_LIST PhInitializeColumnSetList(
4242

4343
if (remaining.Length == 0)
4444
goto CleanupExit;
45-
if (!PhSplitStringRefAtChar(&remaining, '-', &part, &remaining))
45+
if (!PhSplitStringRefAtChar(&remaining, L'-', &part, &remaining))
4646
goto CleanupExit;
4747
if (!PhStringToInteger64(&part, 10, &count))
4848
goto CleanupExit;
@@ -56,9 +56,9 @@ PPH_LIST PhInitializeColumnSetList(
5656
if (remaining.Length == 0)
5757
break;
5858

59-
PhSplitStringRefAtChar(&remaining, '-', &columnSetNamePart, &remaining);
60-
PhSplitStringRefAtChar(&remaining, '-', &columnSetSettingPart, &remaining);
61-
PhSplitStringRefAtChar(&remaining, '-', &columnSetSortPart, &remaining);
59+
PhSplitStringRefAtChar(&remaining, L'-', &columnSetNamePart, &remaining);
60+
PhSplitStringRefAtChar(&remaining, L'-', &columnSetSettingPart, &remaining);
61+
PhSplitStringRefAtChar(&remaining, L'-', &columnSetSortPart, &remaining);
6262

6363
{
6464
PPH_COLUMN_SET_ENTRY entry;
@@ -157,7 +157,7 @@ BOOLEAN PhLoadSettingsColumnSet(
157157
if (remaining.Length == 0)
158158
return FALSE;
159159

160-
if (!PhSplitStringRefAtChar(&remaining, '-', &part, &remaining))
160+
if (!PhSplitStringRefAtChar(&remaining, L'-', &part, &remaining))
161161
return FALSE;
162162
if (!PhStringToInteger64(&part, 10, &count))
163163
return FALSE;
@@ -171,9 +171,9 @@ BOOLEAN PhLoadSettingsColumnSet(
171171
if (remaining.Length == 0)
172172
break;
173173

174-
PhSplitStringRefAtChar(&remaining, '-', &columnSetNamePart, &remaining);
175-
PhSplitStringRefAtChar(&remaining, '-', &columnSetSettingPart, &remaining);
176-
PhSplitStringRefAtChar(&remaining, '-', &columnSetSortPart, &remaining);
174+
PhSplitStringRefAtChar(&remaining, L'-', &columnSetNamePart, &remaining);
175+
PhSplitStringRefAtChar(&remaining, L'-', &columnSetSettingPart, &remaining);
176+
PhSplitStringRefAtChar(&remaining, L'-', &columnSetSortPart, &remaining);
177177

178178
if (PhEqualStringRef(&columnSetNamePart, &ColumnSetName->sr, FALSE))
179179
{

ProcessHacker/extmgr.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -208,11 +208,11 @@ BOOLEAN PhEmParseCompoundId(
208208

209209
if (firstPart.Length == 0)
210210
return FALSE;
211-
if (firstPart.Buffer[0] != '+')
211+
if (firstPart.Buffer[0] != L'+')
212212
return FALSE;
213213

214214
PhSkipStringRef(&firstPart, sizeof(WCHAR));
215-
PhSplitStringRefAtChar(&firstPart, '+', &firstPart, &secondPart);
215+
PhSplitStringRefAtChar(&firstPart, L'+', &firstPart, &secondPart);
216216

217217
if (firstPart.Length == 0 || secondPart.Length == 0)
218218
return FALSE;

ProcessHacker/hndllist.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -603,17 +603,17 @@ BOOLEAN NTAPI PhpHandleTreeNewCallback(
603603
case PHHNTLC_FILESHAREACCESS:
604604
if (handleItem->FileFlags & PH_HANDLE_FILE_SHARED_MASK)
605605
{
606-
node->FileShareAccessText[0] = '-';
607-
node->FileShareAccessText[1] = '-';
608-
node->FileShareAccessText[2] = '-';
606+
node->FileShareAccessText[0] = L'-';
607+
node->FileShareAccessText[1] = L'-';
608+
node->FileShareAccessText[2] = L'-';
609609
node->FileShareAccessText[3] = UNICODE_NULL;
610610

611611
if (handleItem->FileFlags & PH_HANDLE_FILE_SHARED_READ)
612-
node->FileShareAccessText[0] = 'R';
612+
node->FileShareAccessText[0] = L'R';
613613
if (handleItem->FileFlags & PH_HANDLE_FILE_SHARED_WRITE)
614-
node->FileShareAccessText[1] = 'W';
614+
node->FileShareAccessText[1] = L'W';
615615
if (handleItem->FileFlags & PH_HANDLE_FILE_SHARED_DELETE)
616-
node->FileShareAccessText[2] = 'D';
616+
node->FileShareAccessText[2] = L'D';
617617

618618
PhInitializeStringRef(&getCellText->Text, node->FileShareAccessText);
619619
}

ProcessHacker/include/notificop.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ VOID PhNfpPhysicalUsageTextIconUpdateCallback(
124124
_In_opt_ PVOID Context
125125
);
126126

127+
_Success_(return)
127128
BOOLEAN PhNfpGetShowMiniInfoSectionData(
128129
_In_ ULONG IconIndex,
129130
_In_ PPH_NF_ICON RegisteredIcon,

ProcessHacker/include/procprp.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ PHAPPAPI
2929
PPH_PROCESS_PROPCONTEXT
3030
NTAPI
3131
PhCreateProcessPropContext(
32-
_In_ HWND ParentWindowHandle,
32+
_In_opt_ HWND ParentWindowHandle,
3333
_In_ PPH_PROCESS_ITEM ProcessItem
3434
);
3535
// end_phapppub
@@ -82,6 +82,7 @@ PhCreateProcessPropPageContextEx(
8282
_In_opt_ PVOID Context
8383
);
8484

85+
_Success_(return)
8586
PHAPPAPI
8687
BOOLEAN
8788
NTAPI

0 commit comments

Comments
 (0)