Commit Graph

76 Commits

Author SHA1 Message Date
jief666
38564b2870 Improve MemoryTacker. Use gBS->FreePool() instead of FreePool for
firmware allocated memory.
2024-01-08 11:28:32 +01:00
jief
32fbf76326 Update BaseLib.h with macro BASE_LIST_FOR_EACH.
Introduce class apd (automatic pointer destruction)
Introduce MemoryTracker
Weak symbols in MemoryAllocationLib to be able to redefine them (see
MemoryTracker).
Embed LegacyOS instead of a pointer.
Fixed a lot of memory leaks.
2023-11-18 11:04:54 +01:00
jief
42cece9885 Fix nanosvg leaks.
Move global variable textfaces in XTheme.
Move global variable fontsDB in XTheme.
Remove XTheme member SVGParser. SVGParser is deleted just after use.
Remove XTheme members ImageSVG and ImageSVGnight. All images are
rasterized at load, so no need to keep that.
Remove XIcon setFilled because XIcon knows if it's filled or not by
checking Image & ImageNight
2023-11-08 14:35:22 +01:00
jief
c1ce6aa406 Fix a memory waste in efiStrError().
Create displayFreeMemory().
Few renaming and details that doesn't change behavior.
2023-11-06 23:51:16 +01:00
jief
45795ccfcc Make ThemeX a pointer. 2023-11-06 21:53:57 +01:00
SergeySlice
4d3d93231b redirect selfdir in the case of pseudo MS
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2022-08-01 22:34:35 +03:00
jief666
1ea4700bd6 Replace EFI_GUID by a class EFI_GUID. 2022-04-26 00:55:56 +02:00
SergeySlice
5f9f7072a3 correct root pointer
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2022-03-08 19:48:52 +03:00
SergeySlice
ede47c040b remember handle index
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2022-03-08 18:09:22 +03:00
jief666
83593a5ab9 Convert bool to XBool. 2021-09-28 16:54:31 +03:00
jief666
2c829b66cd Create XBool to avoid nasty side effect when assigning int to bool. 2021-09-28 11:28:45 +03:00
jief666
0223567648 New parser XML. New ConfigManager. A lot of refactoring... 2021-04-28 21:30:34 +03:00
jief666
cc3c8fe0a7 Fix bug : it was ignoring legacy with PBR, MBR and CD.
Uncomment eComStation, BeOS, ZETA and Haiku legacy boot sector
detection.
Return unknown icon instead of dummy.
Improve legacy entries title when _LoaderTitle is empty.
Create log_technical_bug(). Temporary redirected to panic.
Hardened egLoadFile().
Hardened SelfOem.
Copy ctor in XStringArray.
Improve qemu launch scripts.
2021-04-23 15:20:48 +03:00
jief666
7babc6fe9b Do not use OC quirks struct anymore in settings.
Fix Disabled property in Smbios/Block config.
Move flagstate in GlobalConfig.
Remove gSettings.Smbios.REV, ECPI, RBr and RPlt.
Create getRBr() and getRPlt().
Operator == and isEqual in XArray, XObjArray, SETTINGS_DATA.
Rename equal to isEqual in XString and XStringArray.
Operator == in INPUT_ITEM, undefinable, ABSTRACT_PATCH (and derived) and
RAM_SLOT_INFO class.
Clean b64cdecode.h.
2021-04-11 08:18:52 +03:00
jief666
946a6428b5 Remove the trim to the first space for PartNo, Vendor, SerialNo.
Refactor ACPI_NAME_LIST as XString8Array.
Create ACPI_RENAME_DEVICE and ACPI_NAME to replace ACPI_NAME_LIST.
Change RAM_SLOT_INFO and MEM_STRUCTURE into class.
Improve XObjArray::RemoveWithoutFreeingAtIndex.
Create XStringArray::ExtractFromPos.
Move CheckFatalError and CheckError to BasicIO.
2021-04-05 11:57:55 +03:00
jief666
2a029bd298 SETTINGS_DATA refactoring. 2021-03-19 23:32:42 +03:00
jief666
1a02f530db Refactoring to allow Clover to be compiled as a macOs app. 2021-02-06 20:16:46 +03:00
jief666
333b6ce1ca Hide dead installer prebooter.
Do not hide installer if there is a main partition.
2021-02-04 17:04:31 +03:00
jief666
fa0bdcd181 Starting to refactor settings. 2021-02-02 12:02:21 +03:00
jief666
16c627596f Rename OSVersion to macOSVersion.
Fixed some icons ordering in main menu.
Fixed macOs version detection for custom entries.
Fixed main Big Sur partition appearing in menu.
Refactor IsValidGuidAsciiString.
2021-01-31 12:50:23 +03:00
SergeySlice
7327d95aba adding data for iMac20
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-12-13 11:51:50 +03:00
jief666
7f1b87c92f Create object MacOsVersion. 2020-11-13 00:25:56 +03:00
jief666
fafc50e3d0 Fix partition name when there is more than 1 system partition in
container.
printf support of "%.*s".
2020-10-26 23:37:32 +03:00
jief666
109746ca82 Re-implement ordering partition with a no-loop guard.
selfOem.unInitialize()
2020-10-23 09:04:01 +03:00
jief666
6a96d48330 Better name for Preboot.
Ordering of Preboot Main Recovery
2020-10-22 16:55:30 +03:00
jief666
70988228c4 Refactor selfOem. Created getConfigDir... methods.
Enclose access to getOemDir... by if (selfOem.oemDirExists()).
Enclose access to getKextsDir... by if (selfOem.isKextsDirFound()).
closeDebugLog() in UninitRefitLib().
Prevent DBG loop.
2020-10-17 16:01:33 +03:00
SergeySlice
11e2e38420 several optimisations
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-10-15 10:05:37 +03:00
jief666
0ab6d8a994 First unit test for memory Find-Replace. 2020-10-12 14:51:08 +03:00
jief666
b8a188382c Make Clover path independent. 2020-10-03 20:02:31 +03:00
jief666
48cdadb0b2 Fix bug where StartLoader cannot find kexts.
First implementation of Self object.
2020-09-28 18:57:50 +03:00
jief666
9cb4016bc5 Final refactoring of plist : now each tag is a class.
Rename strerror to efiStrError because of conflict when run cpp_tests on
Mac.
Switch base64_decode_block to long to avoid warning and cast.
Correct GetTableType4(). Size was used without being initialized.
2020-08-25 18:35:19 +03:00
jief666
2961827dce Correct some refactoring bugs. 2020-08-17 22:40:52 +03:00
jief666
3a742b5dbc Add some XString length test. 2020-08-16 09:01:08 +03:00
jief666
f6903b7579 Refactor the hidden flag. All menu entries are now created, allowing to
toogle hidden flag on and off after creation.
2020-08-15 23:39:25 +03:00
jief666
bc04c86a93 Refactoring some CHAR8* and CHAR16* to XString. 2020-08-15 16:47:56 +03:00
jief666
59d8cbad7f Refactoring KEXT_PATCH.
Change numerous CHAR8* CHAR16* to XString.
2020-08-12 18:15:47 +03:00
jief666
7765a988fe XStringArray self assignament test.
Rename SPrintf S8Printf.
Rename NullXString NullXString8.
Rename XStringArray XString8Array.
2020-08-11 09:00:19 +03:00
jief666
1c4bb3f823 Some CHAR16* refactored to XStringW.
Add insertAtPos, deleteCharsAtPos.
Bug : moved trim, lowerAscii, upperAscii in XStringAbstract.
2020-08-10 14:06:06 +03:00
jief666
4555bb9e9f Remove the last PoolPrints. 2020-08-09 18:55:30 +03:00
jief666
2a62a98abc Do not set DISK_KIND_NODISK if it's an APFS volume. 2020-08-08 09:26:31 +03:00
jief666
8c8a67cd0c Remove hard coded Preboot and Recovery partition name. 2020-08-07 16:17:30 +03:00
jief666
feba2f1399 Rework APFS Preboot and Recovery volumes 2020-08-07 11:23:46 +03:00
SergeySlice
d7c710f9e3 fix some addresses issue, format text
Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-04-28 13:49:24 +03:00
Jief L
de2bb5f950 Refactor some Path to XStringW. 2020-04-27 12:50:49 +03:00
SergeySlice
01f33f7552 detect unknown linux versions,
stylish change: remove space between func and brace

Signed-off-by: SergeySlice <sergey.slice@gmail.com>
2020-04-23 12:08:10 +03:00
jief
4faa0aa8a2 Fix %X and %u format for char and short. 2020-04-17 16:14:24 +03:00
jief
9dc66aee39 Remove macro from Platform.h. 2020-04-16 12:09:22 +03:00
asava
6be18deab2 Correct hang when uniniting volumes due to delete of non-object at Volumes.Empty() 2020-04-15 15:34:03 +03:00
Sergey Isakov
84a320ba5d big cleanup to XTHEME
Signed-off-by: Sergey Isakov <isakov-sl@bk.ru>
2020-04-10 13:04:21 +03:00
Sergey Isakov
c12f59a551 change type of scanvolumedefault
Signed-off-by: Sergey Isakov <isakov-sl@bk.ru>
2020-04-05 21:56:36 +03:00