mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-05-22 05:14:46 -07:00
Unique ptr for xtreme settings, no more loading
This commit is contained in:
@@ -1,18 +1,35 @@
|
||||
#include "xtreme_settings.h"
|
||||
|
||||
bool XTREME_SETTINGS_LOAD(XtremeSettings* xtreme_settings) {
|
||||
XtremeSettings* xtreme_settings = NULL;
|
||||
|
||||
XtremeSettings* XTREME_SETTINGS() {
|
||||
if (xtreme_settings == NULL) {
|
||||
xtreme_settings = malloc(sizeof(XtremeSettings));
|
||||
_XTREME_SETTINGS_LOAD(xtreme_settings);
|
||||
}
|
||||
return xtreme_settings;
|
||||
}
|
||||
|
||||
bool XTREME_SETTINGS_SAVE() {
|
||||
if (xtreme_settings == NULL) {
|
||||
XTREME_SETTINGS();
|
||||
}
|
||||
return _XTREME_SETTINGS_SAVE(xtreme_settings);
|
||||
}
|
||||
|
||||
bool _XTREME_SETTINGS_LOAD(XtremeSettings* xtreme_settings) {
|
||||
furi_assert(xtreme_settings);
|
||||
|
||||
bool loaded = saved_struct_load(
|
||||
XTREME_SETTINGS_PATH, xtreme_settings, sizeof(XtremeSettings), XTREME_SETTINGS_MAGIC, XTREME_SETTINGS_VERSION);
|
||||
if(!loaded) {
|
||||
memset(xtreme_settings, 0, sizeof(XtremeSettings));
|
||||
loaded = XTREME_SETTINGS_SAVE(xtreme_settings);
|
||||
loaded = _XTREME_SETTINGS_SAVE(xtreme_settings);
|
||||
}
|
||||
return loaded;
|
||||
}
|
||||
|
||||
bool XTREME_SETTINGS_SAVE(XtremeSettings* xtreme_settings) {
|
||||
bool _XTREME_SETTINGS_SAVE(XtremeSettings* xtreme_settings) {
|
||||
furi_assert(xtreme_settings);
|
||||
|
||||
return saved_struct_save(
|
||||
|
||||
Reference in New Issue
Block a user