aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-fs/udev/files/udev-150-fix-missing-firmware-timeout.diff')
-rw-r--r--sys-fs/udev/files/udev-150-fix-missing-firmware-timeout.diff29
1 files changed, 29 insertions, 0 deletions
diff --git a/sys-fs/udev/files/udev-150-fix-missing-firmware-timeout.diff b/sys-fs/udev/files/udev-150-fix-missing-firmware-timeout.diff
new file mode 100644
index 0000000..7690f6b
--- /dev/null
+++ b/sys-fs/udev/files/udev-150-fix-missing-firmware-timeout.diff
@@ -0,0 +1,29 @@
+diff --git a/extras/firmware/firmware.c b/extras/firmware/firmware.c
+index 8f70be4..16455de 100644
+--- a/extras/firmware/firmware.c
++++ b/extras/firmware/firmware.c
+@@ -149,6 +149,7 @@ int main(int argc, char **argv)
+
+ util_path_encode(firmware, fwencpath, sizeof(fwencpath));
+ util_strscpyl(misspath, sizeof(misspath), udev_get_dev_path(udev), "/.udev/firmware-missing/", fwencpath, NULL);
++ util_strscpyl(loadpath, sizeof(loadpath), udev_get_sys_path(udev), devpath, "/loading", NULL);
+
+ if (fwfile == NULL) {
+ int err;
+@@ -166,6 +167,7 @@ int main(int argc, char **argv)
+ udev_selinux_resetfscreatecon(udev);
+ } while (err == -ENOENT);
+ rc = 2;
++ set_loading(udev, loadpath, "-1");
+ goto exit;
+ }
+
+@@ -176,7 +178,6 @@ int main(int argc, char **argv)
+ if (unlink(misspath) == 0)
+ util_delete_path(udev, misspath);
+
+- util_strscpyl(loadpath, sizeof(loadpath), udev_get_sys_path(udev), devpath, "/loading", NULL);
+ set_loading(udev, loadpath, "1");
+
+ util_strscpyl(datapath, sizeof(datapath), udev_get_sys_path(udev), devpath, "/data", NULL);
+