Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
nx-libs
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
dimbor
nx-libs
Commits
11b2b067
Commit
11b2b067
authored
Jan 03, 2018
by
Ulrich Sibiller
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Keyboard.c: rework string allocation/building
parent
a0e985fb
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
10 additions
and
14 deletions
+10
-14
Keyboard.c
nx-X11/programs/Xserver/hw/nxagent/Keyboard.c
+10
-14
No files found.
nx-X11/programs/Xserver/hw/nxagent/Keyboard.c
View file @
11b2b067
...
...
@@ -534,7 +534,6 @@ static void nxagentCheckXkbBaseDirectory(void)
static
char
*
nxagentXkbGetRules
()
{
int
ret
;
int
size
,
sizeDflt
,
sizeAlt
;
char
*
path
;
struct
stat
buf
;
...
...
@@ -543,19 +542,11 @@ static char *nxagentXkbGetRules()
XkbBaseDirectory
);
#endif
sizeDflt
=
strlen
(
XKB_DFLT_RULES_FILE
);
sizeAlt
=
strlen
(
XKB_ALTS_RULES_FILE
);
size
=
strlen
(
XkbBaseDirectory
)
+
strlen
(
"/rules/"
);
size
+=
(
sizeDflt
>
sizeAlt
)
?
sizeDflt
:
sizeAlt
;
if
((
path
=
malloc
((
size
+
1
)
*
sizeof
(
char
)))
==
NULL
)
if
(
-
1
==
asprintf
(
&
path
,
"%s/rules/%s"
,
XkbBaseDirectory
,
XKB_DFLT_RULES_FILE
))
{
FatalError
(
"nxagentXkbGetRules: malloc failed."
);
}
strcpy
(
path
,
XkbBaseDirectory
);
strcat
(
path
,
"/rules/"
);
strcat
(
path
,
XKB_DFLT_RULES_FILE
);
#ifdef TEST
fprintf
(
stderr
,
"nxagentXkbGetRules: checking rules file [%s]
\n
"
,
path
);
#endif
...
...
@@ -572,11 +563,16 @@ static char *nxagentXkbGetRules()
#ifdef TEST
fprintf
(
stderr
,
"nxagentXkbGetRules: WARNING! Failed to stat file [%s]: %s.
\n
"
,
path
,
strerror
(
ret
));
#endif
#endif
free
(
path
);
path
=
NULL
;
if
(
-
1
==
asprintf
(
&
path
,
"%s/rules/%s"
,
XkbBaseDirectory
,
XKB_ALTS_RULES_FILE
))
{
FatalError
(
"nxagentXkbGetRules: malloc failed."
);
}
strcpy
(
path
,
XkbBaseDirectory
);
strcat
(
path
,
"/rules/"
);
strcat
(
path
,
XKB_ALTS_RULES_FILE
);
#ifdef TEST
fprintf
(
stderr
,
"nxagentXkbGetRules: checking rules file [%s]
\n
"
,
path
);
#endif
...
...
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