deprecated-readdir_r.patch 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. From 5e2f64ebb96f45155d0301a81ccd141a17fd7d9b Mon Sep 17 00:00:00 2001
  2. From: Andreas Schwab <schwab@suse.de>
  3. Date: Tue, 12 Jul 2016 10:34:50 +0200
  4. Subject: [PATCH] Remove use of deprecated readdir_r
  5. Signed-off-by: Andreas Schwab <schwab@suse.de>
  6. ---
  7. Index: efivar-0.23/src/vars.c
  8. ===================================================================
  9. --- efivar-0.23.orig/src/vars.c
  10. +++ efivar-0.23/src/vars.c
  11. @@ -128,19 +128,15 @@ is_64bit(void)
  12. if (dfd < 0)
  13. goto err;
  14. - struct dirent entry;
  15. - struct dirent *result = NULL;
  16. while (1) {
  17. - int rc = readdir_r(dir, &entry, &result);
  18. - if (rc != 0)
  19. - break;
  20. - if (result == NULL)
  21. + struct dirent *entry = readdir(dir);
  22. + if (entry == NULL)
  23. break;
  24. - if (!strcmp(entry.d_name, "..") || !strcmp(entry.d_name, "."))
  25. + if (!strcmp(entry->d_name, "..") || !strcmp(entry->d_name, "."))
  26. continue;
  27. - ssize_t size = get_file_data_size(dfd, entry.d_name);
  28. + ssize_t size = get_file_data_size(dfd, entry->d_name);
  29. if (size < 0) {
  30. continue;
  31. } else if (size == 2084) {