add recovery.log reporting
diff --git a/Android.mk b/Android.mk
index 6903494..42b36b4 100644
--- a/Android.mk
+++ b/Android.mk
@@ -26,7 +26,7 @@
LOCAL_FORCE_STATIC_EXECUTABLE := true
-RECOVERY_VERSION := ClockworkMod Recovery v2.0.0.6
+RECOVERY_VERSION := ClockworkMod Recovery v2.0.0.7
LOCAL_CFLAGS := -DRECOVERY_VERSION="$(RECOVERY_VERSION)"
RECOVERY_API_VERSION := 2
LOCAL_CFLAGS += -DRECOVERY_API_VERSION=$(RECOVERY_API_VERSION)
diff --git a/extendedcommands.c b/extendedcommands.c
index ff6bb88..3bd5721 100644
--- a/extendedcommands.c
+++ b/extendedcommands.c
@@ -797,8 +797,10 @@
void write_fstab_root(char *root_path, FILE *file)
{
RootInfo *info = get_root_info_for_path(root_path);
- if (info == NULL)
+ if (info == NULL) {
+ LOGW("Unable to get root info for %s during fstab generation!", root_path);
return;
+ }
MtdPartition *mtd = get_root_mtd_partition(root_path);
if (mtd != NULL)
{
@@ -816,10 +818,15 @@
void create_fstab()
{
FILE *file = fopen("/etc/fstab", "w");
- if (file == NULL)
+ if (file == NULL) {
+ LOGW("Unable to create /etc/fstab!");
return;
+ }
write_fstab_root("CACHE:", file);
write_fstab_root("DATA:", file);
+#ifdef HAS_DATADATA
+ write_fstab_root("DATADATA:", file);
+#endif
write_fstab_root("SYSTEM:", file);
write_fstab_root("SDCARD:", file);
write_fstab_root("SDEXT:", file);
@@ -832,7 +839,7 @@
return;
if (0 != ensure_root_path_mounted("SDCARD:"))
return;
- mkdir("/sdcard/clockworkmod");
- copyfile("/tmp/recovery.log", "/sdcard/clockworkmod/recovery.log");
+ mkdir("/sdcard/clockworkmod", S_IRWXU);
+ __system("cp /tmp/recovery.log /sdcard/clockworkmod/recovery.log");
ui_print("/tmp/recovery.log was copied to /sdcard/clockworkmod/recovery.log. Please open ROM Manager to report the issue.");
}
\ No newline at end of file
diff --git a/recovery.c b/recovery.c
index cf8560d..31d41f1 100644
--- a/recovery.c
+++ b/recovery.c
@@ -494,7 +494,7 @@
return amend_main(argc, argv);
return busybox_driver(argc, argv);
}
- //create_fstab();
+ create_fstab();
__system("/sbin/postrecoveryboot.sh");
int is_user_initiated_recovery = 0;
diff --git a/roots.c b/roots.c
index 4450c1e..535a1a7 100644
--- a/roots.c
+++ b/roots.c
@@ -36,46 +36,6 @@
static const char g_raw[] = "@\0g_raw";
static const char g_package_file[] = "@\0g_package_file";
-#ifndef SDCARD_DEVICE_PRIMARY
-#define SDCARD_DEVICE_PRIMARY "/dev/block/mmcblk0"
-#endif
-
-#ifndef SDCARD_DEVICE_SECONDARY
-#define SDCARD_DEVICE_SECONDARY "/dev/block/mmcblk0p1"
-#endif
-
-#ifndef SDEXT_DEVICE
-#define SDEXT_DEVICE "/dev/block/mmcblk0p2"
-#endif
-
-#ifndef SDEXT_FILESYSTEM
-#define SDEXT_FILESYSTEM "ext4"
-#endif
-
-#ifndef DATA_DEVICE
-#define DATA_DEVICE g_mtd_device
-#endif
-
-#ifndef DATA_FILESYSTEM
-#define DATA_FILESYSTEM "yaffs2"
-#endif
-
-#ifndef DATADATA_DEVICE
-#define DATADATA_DEVICE g_mtd_device
-#endif
-
-#ifndef DATADATA_FILESYSTEM
-#define DATADATA_FILESYSTEM "yaffs2"
-#endif
-
-#ifndef CACHE_DEVICE
-#define CACHE_DEVICE g_mtd_device
-#endif
-
-#ifndef CACHE_FILESYSTEM
-#define CACHE_FILESYSTEM "yaffs2"
-#endif
-
static RootInfo g_roots[] = {
{ "BOOT:", g_mtd_device, NULL, "boot", NULL, g_raw },
{ "CACHE:", CACHE_DEVICE, NULL, "cache", "/cache", CACHE_FILESYSTEM },
diff --git a/roots.h b/roots.h
index 7b15ed1..40aef87 100644
--- a/roots.h
+++ b/roots.h
@@ -20,6 +20,46 @@
#include "minzip/Zip.h"
#include "mtdutils/mtdutils.h"
+#ifndef SDCARD_DEVICE_PRIMARY
+#define SDCARD_DEVICE_PRIMARY "/dev/block/mmcblk0"
+#endif
+
+#ifndef SDCARD_DEVICE_SECONDARY
+#define SDCARD_DEVICE_SECONDARY "/dev/block/mmcblk0p1"
+#endif
+
+#ifndef SDEXT_DEVICE
+#define SDEXT_DEVICE "/dev/block/mmcblk0p2"
+#endif
+
+#ifndef SDEXT_FILESYSTEM
+#define SDEXT_FILESYSTEM "ext4"
+#endif
+
+#ifndef DATA_DEVICE
+#define DATA_DEVICE g_mtd_device
+#endif
+
+#ifndef DATA_FILESYSTEM
+#define DATA_FILESYSTEM "yaffs2"
+#endif
+
+#ifndef DATADATA_DEVICE
+#define DATADATA_DEVICE g_mtd_device
+#endif
+
+#ifndef DATADATA_FILESYSTEM
+#define DATADATA_FILESYSTEM "yaffs2"
+#endif
+
+#ifndef CACHE_DEVICE
+#define CACHE_DEVICE g_mtd_device
+#endif
+
+#ifndef CACHE_FILESYSTEM
+#define CACHE_FILESYSTEM "yaffs2"
+#endif
+
/* Any of the "root_path" arguments can be paths with relative
* components, like "SYSTEM:a/b/c".
*/