← Commit list

5cd1ccd99

Rob Landley
Rob Landley
2006-05-21
SOURCE BUG Duration: 47s

Subject

Convert to a global struct, the way sed was. Now I have two, I can work out the infrastructure to merge global structs into a union...

SOURCE BUG

This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)

→ Bu hatanin tam hikayesini ve duzeltme diffini gor

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

util-linux/mdev.c+9 -4
@@ -28,7 +28,12 @@
#include <busybox.h>
-int root_major, root_minor;
+struct mdev_globals
+{
+ int root_major, root_minor;
+} mdev_globals;
+
+#define bbg mdev_globals
/* mknod in /dev based on a path like "/sys/block/hda/hda1" */
static void make_device(char *path)
@@ -173,7 +178,7 @@ found_device:
if (mknod(device_name, mode | type, makedev(major, minor)) && errno != EEXIST)
bb_perror_msg_and_die("mknod %s failed", device_name);
- if (major==root_major && minor==root_minor)
+ if (major==bbg.root_major && minor==bbg.root_minor)
symlink(device_name, "root");
if (ENABLE_FEATURE_MDEV_CONF) chown(device_name, uid, gid);
@@ -226,8 +231,8 @@ int mdev_main(int argc, char *argv[])
struct stat st;
stat("/", &st); // If this fails, we have bigger problems.
- root_major=major(st.st_dev);
- root_minor=minor(st.st_dev);
+ bbg.root_major=major(st.st_dev);
+ bbg.root_minor=minor(st.st_dev);
strcpy(temp,"/sys/block");
find_dev(temp);
strcpy(temp,"/sys/class");