Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
2792431a
Commit
2792431a
authored
Apr 30, 2011
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Automatically save all configuration items
parent
d625d6c0
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
15 additions
and
76 deletions
+15
-76
include/vlc_configuration.h
include/vlc_configuration.h
+0
-2
include/vlc_plugin.h
include/vlc_plugin.h
+2
-5
modules/gui/skins2/src/skin_main.cpp
modules/gui/skins2/src/skin_main.cpp
+0
-2
modules/services_discovery/podcast.c
modules/services_discovery/podcast.c
+0
-1
src/config/core.c
src/config/core.c
+0
-1
src/config/file.c
src/config/file.c
+11
-43
src/libvlc-module.c
src/libvlc-module.c
+0
-10
src/modules/cache.c
src/modules/cache.c
+0
-5
src/modules/entry.c
src/modules/entry.c
+2
-7
No files found.
include/vlc_configuration.h
View file @
2792431a
...
...
@@ -151,7 +151,6 @@ struct module_config_t
char
*
psz_longtext
;
/* Long comment on the configuration option */
module_value_t
value
;
/* Option value */
module_value_t
orig
;
module_value_t
saved
;
module_value_t
min
;
module_value_t
max
;
...
...
@@ -180,7 +179,6 @@ struct module_config_t
bool
b_restart
;
/* Flag to indicate the option needs a restart */
/* to take effect */
/* Option values loaded from config file */
bool
b_autosave
;
/* Config will be auto-saved at exit time */
bool
b_unsaveable
;
/* Config should not be saved */
bool
b_safe
;
...
...
include/vlc_plugin.h
View file @
2792431a
...
...
@@ -72,8 +72,8 @@ enum vlc_module_properties
VLC_CONFIG_VOLATILE
,
/* don't write variable to storage (args=none) */
VLC_CONFIG_PERSISTENT
,
/*
always write variable to storage (args=none
) */
VLC_CONFIG_PERSISTENT
_OBSOLETE
,
/*
unused (ignored
) */
VLC_CONFIG_RESTART
,
/* restart required to apply value change (args=none) */
...
...
@@ -419,9 +419,6 @@ enum vlc_module_properties
#define change_need_restart() \
vlc_config_set (p_config, VLC_CONFIG_RESTART);
#define change_autosave() \
vlc_config_set (p_config, VLC_CONFIG_PERSISTENT);
/* For options that are saved but hidden from the preferences panel */
#define change_private() \
vlc_config_set (p_config, VLC_CONFIG_PRIVATE);
...
...
modules/gui/skins2/src/skin_main.cpp
View file @
2792431a
...
...
@@ -482,10 +482,8 @@ vlc_module_begin ()
set_subcategory
(
SUBCAT_INTERFACE_MAIN
)
add_loadfile
(
"skins2-last"
,
""
,
SKINS2_LAST
,
SKINS2_LAST_LONG
,
true
)
change_autosave
()
add_string
(
"skins2-config"
,
""
,
SKINS2_CONFIG
,
SKINS2_CONFIG_LONG
,
true
)
change_autosave
()
change_private
()
#ifdef WIN32
add_bool
(
"skins2-systray"
,
true
,
SKINS2_SYSTRAY
,
...
...
modules/services_discovery/podcast.c
View file @
2792431a
...
...
@@ -66,7 +66,6 @@ vlc_module_begin ()
add_string
(
"podcast-urls"
,
NULL
,
URLS_TEXT
,
URLS_LONGTEXT
,
false
)
change_autosave
()
set_capability
(
"services_discovery"
,
0
)
set_callbacks
(
Open
,
Close
)
...
...
src/config/core.c
View file @
2792431a
...
...
@@ -473,7 +473,6 @@ void config_Free( module_t *p_module )
{
free
(
p_item
->
value
.
psz
);
free
(
p_item
->
orig
.
psz
);
free
(
p_item
->
saved
.
psz
);
}
if
(
p_item
->
ppsz_list
)
...
...
src/config/file.c
View file @
2792431a
...
...
@@ -228,7 +228,7 @@ int config_LoadConfigFile( vlc_object_t *p_this )
msg_Warn
(
p_this
,
"Integer value (%s) for %s: %m"
,
psz_option_value
,
psz_option_name
);
else
item
->
saved
.
i
=
item
->
value
.
i
=
l
;
item
->
value
.
i
=
l
;
break
;
}
...
...
@@ -236,14 +236,11 @@ int config_LoadConfigFile( vlc_object_t *p_this )
if
(
!*
psz_option_value
)
break
;
/* ignore empty option */
item
->
value
.
f
=
(
float
)
atof
(
psz_option_value
);
item
->
saved
.
f
=
item
->
value
.
f
;
break
;
default:
free
((
char
*
)
item
->
value
.
psz
);
free
((
char
*
)
item
->
saved
.
psz
);
item
->
value
.
psz
=
convert
(
psz_option_value
);
item
->
saved
.
psz
=
strdupnull
(
item
->
value
.
psz
);
break
;
}
}
...
...
@@ -357,7 +354,7 @@ static int config_PrepareDir (vlc_object_t *obj)
* save.
* Really stupid no ?
*****************************************************************************/
static
int
SaveConfigFile
(
vlc_object_t
*
p_this
,
bool
b_autosave
)
static
int
SaveConfigFile
(
vlc_object_t
*
p_this
)
{
module_t
*
p_parser
;
char
*
permanent
=
NULL
,
*
temporary
=
NULL
;
...
...
@@ -520,66 +517,37 @@ static int SaveConfigFile( vlc_object_t *p_this, bool b_autosave )
||
p_item
->
b_unsaveable
)
/* ignore volatile option */
continue
;
/* Do not save the new value in the configuration file
* if doing an autosave, and the item is not an "autosaved" one. */
bool
b_retain
=
b_autosave
&&
!
p_item
->
b_autosave
;
if
(
IsConfigIntegerType
(
p_item
->
i_type
))
{
int64_t
val
=
b_retain
?
p_item
->
saved
.
i
:
p_item
->
value
.
i
;
int64_t
val
=
p_item
->
value
.
i
;
config_Write
(
file
,
p_item
->
psz_text
,
(
p_item
->
i_type
==
CONFIG_ITEM_BOOL
)
?
N_
(
"boolean"
)
:
N_
(
"integer"
),
val
==
p_item
->
orig
.
i
,
p_item
->
psz_name
,
"%"
PRId64
,
val
);
p_item
->
saved
.
i
=
val
;
}
else
if
(
IsConfigFloatType
(
p_item
->
i_type
))
{
float
val
=
b_retain
?
p_item
->
saved
.
f
:
p_item
->
value
.
f
;
float
val
=
p_item
->
value
.
f
;
config_Write
(
file
,
p_item
->
psz_text
,
N_
(
"float"
),
val
==
p_item
->
orig
.
f
,
p_item
->
psz_name
,
"%f"
,
val
);
p_item
->
saved
.
f
=
val
;
}
else
{
const
char
*
psz_value
=
b_retain
?
p_item
->
saved
.
psz
:
p_item
->
value
.
psz
;
const
char
*
psz_value
=
p_item
->
value
.
psz
;
bool
modified
;
assert
(
IsConfigStringType
(
p_item
->
i_type
));
if
(
b_retain
&&
(
psz_value
==
NULL
))
/* FIXME: hack */
psz_value
=
p_item
->
orig
.
psz
;
modified
=
(
psz_value
!=
NULL
)
?
((
p_item
->
orig
.
psz
!=
NULL
)
?
(
strcmp
(
psz_value
,
p_item
->
orig
.
psz
)
!=
0
)
:
true
)
:
(
p_item
->
orig
.
psz
!=
NULL
);
modified
=
!!
strcmp
(
psz_value
?
psz_value
:
""
,
p_item
->
orig
.
psz
?
p_item
->
orig
.
psz
:
""
);
config_Write
(
file
,
p_item
->
psz_text
,
N_
(
"string"
),
!
modified
,
p_item
->
psz_name
,
"%s"
,
psz_value
?
psz_value
:
""
);
if
(
!
b_retain
)
{
free
((
char
*
)
p_item
->
saved
.
psz
);
if
(
(
psz_value
&&
p_item
->
orig
.
psz
&&
strcmp
(
psz_value
,
p_item
->
orig
.
psz
))
||
!
psz_value
||
!
p_item
->
orig
.
psz
)
p_item
->
saved
.
psz
=
strdupnull
(
psz_value
);
else
p_item
->
saved
.
psz
=
NULL
;
}
}
if
(
!
b_retain
)
p_item
->
b_dirty
=
false
;
p_item
->
b_dirty
=
false
;
}
}
vlc_rwlock_unlock
(
&
config_lock
);
...
...
@@ -666,13 +634,13 @@ int config_AutoSaveConfigFile( vlc_object_t *p_this )
p_item
<
p_end
&&
!
save
;
p_item
++
)
{
save
=
p_item
->
b_
autosave
&&
p_item
->
b_
dirty
;
save
=
p_item
->
b_dirty
;
}
}
if
(
save
)
/* Note: this will get the read lock recursively. Ok. */
ret
=
SaveConfigFile
(
p_this
,
true
);
ret
=
SaveConfigFile
(
p_this
);
vlc_rwlock_unlock
(
&
config_lock
);
module_list_free
(
list
);
...
...
@@ -682,5 +650,5 @@ int config_AutoSaveConfigFile( vlc_object_t *p_this )
#undef config_SaveConfigFile
int
config_SaveConfigFile
(
vlc_object_t
*
p_this
)
{
return
SaveConfigFile
(
p_this
,
false
);
return
SaveConfigFile
(
p_this
);
}
src/libvlc-module.c
View file @
2792431a
...
...
@@ -2710,34 +2710,24 @@ vlc_module_begin ()
add_string
(
"bookmark1"
,
NULL
,
BOOKMARK1_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark2"
,
NULL
,
BOOKMARK2_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark3"
,
NULL
,
BOOKMARK3_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark4"
,
NULL
,
BOOKMARK4_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark5"
,
NULL
,
BOOKMARK5_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark6"
,
NULL
,
BOOKMARK6_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark7"
,
NULL
,
BOOKMARK7_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark8"
,
NULL
,
BOOKMARK8_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark9"
,
NULL
,
BOOKMARK9_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
add_string
(
"bookmark10"
,
NULL
,
BOOKMARK10_TEXT
,
BOOKMARK_LONGTEXT
,
false
)
change_autosave
()
#define HELP_TEXT \
N_("print help for VLC (can be combined with --advanced and " \
...
...
src/modules/cache.c
View file @
2792431a
...
...
@@ -368,15 +368,10 @@ static int CacheLoadConfig( module_t *p_module, FILE *file )
p_module
->
p_config
[
i
].
value
.
psz
=
(
p_module
->
p_config
[
i
].
orig
.
psz
!=
NULL
)
?
strdup
(
p_module
->
p_config
[
i
].
orig
.
psz
)
:
NULL
;
p_module
->
p_config
[
i
].
saved
.
psz
=
NULL
;
}
else
{
memcpy
(
&
p_module
->
p_config
[
i
].
value
,
&
p_module
->
p_config
[
i
].
orig
,
sizeof
(
p_module
->
p_config
[
i
].
value
));
memcpy
(
&
p_module
->
p_config
[
i
].
saved
,
&
p_module
->
p_config
[
i
].
orig
,
sizeof
(
p_module
->
p_config
[
i
].
saved
));
}
p_module
->
p_config
[
i
].
b_dirty
=
false
;
...
...
src/modules/entry.c
View file @
2792431a
...
...
@@ -267,13 +267,13 @@ int vlc_plugin_set (module_t *module, module_config_t *item, int propid, ...)
{
if
(
IsConfigIntegerType
(
item
->
i_type
))
{
item
->
orig
.
i
=
item
->
saved
.
i
=
item
->
orig
.
i
=
item
->
value
.
i
=
va_arg
(
ap
,
int64_t
);
}
else
if
(
IsConfigFloatType
(
item
->
i_type
))
{
item
->
orig
.
f
=
item
->
saved
.
f
=
item
->
orig
.
f
=
item
->
value
.
f
=
va_arg
(
ap
,
double
);
}
else
...
...
@@ -282,7 +282,6 @@ int vlc_plugin_set (module_t *module, module_config_t *item, int propid, ...)
const
char
*
value
=
va_arg
(
ap
,
const
char
*
);
item
->
value
.
psz
=
value
?
strdup
(
value
)
:
NULL
;
item
->
orig
.
psz
=
value
?
strdup
(
value
)
:
NULL
;
item
->
saved
.
psz
=
value
?
strdup
(
value
)
:
NULL
;
}
break
;
}
...
...
@@ -313,10 +312,6 @@ int vlc_plugin_set (module_t *module, module_config_t *item, int propid, ...)
item
->
b_unsaveable
=
true
;
break
;
case
VLC_CONFIG_PERSISTENT
:
item
->
b_autosave
=
true
;
break
;
case
VLC_CONFIG_RESTART
:
item
->
b_restart
=
true
;
break
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment