Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
b5d4289d
Commit
b5d4289d
authored
Feb 16, 2010
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
server: Save and load registry symlinks to/from disk files.
parent
2a378676
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
4 additions
and
3 deletions
+4
-3
registry.c
server/registry.c
+4
-3
No files found.
server/registry.c
View file @
b5d4289d
...
...
@@ -248,7 +248,7 @@ static void save_subkeys( const struct key *key, const struct key *base, FILE *f
if
(
key
->
flags
&
KEY_VOLATILE
)
return
;
/* save key if it has either some values or no subkeys, or needs special options */
/* keys with no values but subkeys are saved implicitly by saving the subkeys */
if
((
key
->
last_value
>=
0
)
||
(
key
->
last_subkey
==
-
1
)
||
key
->
class
)
if
((
key
->
last_value
>=
0
)
||
(
key
->
last_subkey
==
-
1
)
||
key
->
class
||
(
key
->
flags
&
KEY_SYMLINK
)
)
{
fprintf
(
f
,
"
\n
["
);
if
(
key
!=
base
)
dump_path
(
key
,
base
,
f
);
...
...
@@ -259,6 +259,7 @@ static void save_subkeys( const struct key *key, const struct key *base, FILE *f
dump_strW
(
key
->
class
,
key
->
classlen
/
sizeof
(
WCHAR
),
f
,
"
\"\"
"
);
fprintf
(
f
,
"
\"\n
"
);
}
if
(
key
->
flags
&
KEY_SYMLINK
)
fputs
(
"#link
\n
"
,
f
);
for
(
i
=
0
;
i
<=
key
->
last_value
;
i
++
)
dump_value
(
&
key
->
values
[
i
],
f
);
}
for
(
i
=
0
;
i
<=
key
->
last_subkey
;
i
++
)
save_subkeys
(
key
->
subkeys
[
i
],
base
,
f
);
...
...
@@ -723,8 +724,7 @@ static struct key *create_key( struct key *key, const struct unicode_str *name,
return
NULL
;
}
}
/* FIXME: no saving of symlinks yet */
if
(
options
&
REG_OPTION_CREATE_LINK
)
key
->
flags
|=
KEY_SYMLINK
|
KEY_VOLATILE
;
if
(
options
&
REG_OPTION_CREATE_LINK
)
key
->
flags
|=
KEY_SYMLINK
;
done:
if
(
debug_level
>
1
)
dump_operation
(
key
,
NULL
,
"Create"
);
...
...
@@ -1247,6 +1247,7 @@ static int load_key_option( struct key *key, const char *buffer, struct file_loa
if
(
!
(
key
->
class
=
memdup
(
info
->
tmp
,
len
)))
len
=
0
;
key
->
classlen
=
len
;
}
if
(
!
strncmp
(
buffer
,
"#link"
,
5
))
key
->
flags
|=
KEY_SYMLINK
;
/* ignore unknown options */
return
1
;
}
...
...
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