chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
udev: fix gcc warnings
[elogind.git]
/
src
/
udev
/
libudev-queue.c
diff --git
a/src/udev/libudev-queue.c
b/src/udev/libudev-queue.c
index 0e82cb6ae8855e267bf9c996f95942a329857d5e..48184ddaa61fe0d33eddf6c61ca1356beadba1ad 100644
(file)
--- a/
src/udev/libudev-queue.c
+++ b/
src/udev/libudev-queue.c
@@
-171,7
+171,7
@@
ssize_t udev_queue_skip_devpath(FILE *queue_file)
unsigned short int len;
if (fread(&len, sizeof(unsigned short int), 1, queue_file) == 1) {
unsigned short int len;
if (fread(&len, sizeof(unsigned short int), 1, queue_file) == 1) {
- char
devpath[len]
;
+ char
*devpath = alloca(len)
;
/* use fread to skip, fseek might drop buffered data */
if (fread(devpath, 1, len, queue_file) == len)
/* use fread to skip, fseek might drop buffered data */
if (fread(devpath, 1, len, queue_file) == len)
@@
-197,7
+197,7
@@
ssize_t udev_queue_read_devpath(FILE *queue_file, char *devpath, size_t size)
/* if devpath was too long, skip unread characters */
if (read_bytes != len) {
unsigned short int skip_bytes = len - read_bytes;
/* if devpath was too long, skip unread characters */
if (read_bytes != len) {
unsigned short int skip_bytes = len - read_bytes;
- char
buf[skip_bytes]
;
+ char
*buf = alloca(skip_bytes)
;
if (fread(buf, 1, skip_bytes, queue_file) != skip_bytes)
return -1;
if (fread(buf, 1, skip_bytes, queue_file) != skip_bytes)
return -1;