1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
--- source/apphelpers.pas 2025-12-16 11:00:34.000000000 -0800
+++ source/apphelpers.pas 2025-12-17 00:09:19.625236000 -0800
@@ -1316,16 +1316,21 @@
{$IFDEF LINUX}
Result := '';
{$ENDIF}
+ {$IFDEF FREEBSD}
+ Result := '';
+ {$ENDIF}
end;
function GetResourcesDir: String;
begin
+ Result := GetAppDir;
// point to resources dir in macOS app bundle
{$IFDEF DARWIN}
Result := GetAppDir + '..' + DirectorySeparator + 'Resources' + DirectorySeparator;
- {$ELSE}
- Result := GetAppDir;
{$ENDIF}
+ {$IFDEF FREEBSD}
+ Result := '%%DATADIR%%/';
+ {$ENDIF}
end;
{**
@@ -2911,7 +2916,7 @@
Output: String;
CmdResult: Boolean;
begin
- {$IfDef LINUX}
+ {$if defined(LINUX) or defined(FREEBSD)}
// Netcat on Linux
CmdResult := Process.RunCommandInDir('', 'nc', ['-w 1 -zv 127.0.0.1 '+Port.ToString], Output);
Result := not CmdResult;
@@ -3026,7 +3031,7 @@
FreeLibrary(NTHandle);
end;
{$EndIf}
- {$IfDef LINUX}
+ {$if defined(LINUX) or defined(FREEBSD)}
IsWineStored := 0;
{$EndIf}
Result := IsWineStored = 1;
@@ -3063,6 +3068,9 @@
function GetOS: String;
begin
Result := 'Unknown';
+ {$IfDef FreeBSD}
+ Result := 'FreeBSD';
+ {$EndIf}
{$IfDef LINUX}
Result := 'Linux';
{$EndIf}
@@ -4569,7 +4577,7 @@
1: begin // String
Value := StringReplace(Value, CHR13REPLACEMENT, #13, [rfReplaceAll]);
Value := StringReplace(Value, CHR10REPLACEMENT, #10, [rfReplaceAll]);
- {$IfDef LINUX}
+ {$if defined(LINUX) or defined(FREEBSD)}
Value := ConvertWindowsToLinuxPath(Value);
{$EndIf}
FRegistry.WriteString(Name, Value);
|