Merge changes Ic8e18e61,I62c78eb8

* changes:
  vold: fix an offset one bug that makes partition 4 unusable
  vold: set state back to idle on formatting error
gugelfrei
Jean-Baptiste Queru 14 years ago committed by Android Code Review
commit 09f774b7d3

@ -189,8 +189,8 @@ void DirectVolume::handlePartitionAdded(const char *devpath, NetlinkEvent *evt)
#ifdef PARTITION_DEBUG #ifdef PARTITION_DEBUG
SLOGD("Dv:partAdd: part_num = %d, minor = %d\n", part_num, minor); SLOGD("Dv:partAdd: part_num = %d, minor = %d\n", part_num, minor);
#endif #endif
if (part_num >= MAX_PARTITIONS) { if (part_num > MAX_PARTITIONS) {
SLOGE("Dv:partAdd: ignoring part_num = %d (max: %d)\n", part_num, MAX_PARTITIONS-1); SLOGE("Dv:partAdd: ignoring part_num = %d (max: %d)\n", part_num, MAX_PARTITIONS);
} else { } else {
mPartMinors[part_num -1] = minor; mPartMinors[part_num -1] = minor;
} }

@ -213,6 +213,7 @@ int Volume::formatVol() {
} }
setState(Volume::State_Formatting); setState(Volume::State_Formatting);
int ret = -1;
if (initializeMbr(devicePath)) { if (initializeMbr(devicePath)) {
SLOGE("Failed to initialize MBR (%s)", strerror(errno)); SLOGE("Failed to initialize MBR (%s)", strerror(errno));
goto err; goto err;
@ -226,10 +227,11 @@ int Volume::formatVol() {
goto err; goto err;
} }
setState(Volume::State_Idle); ret = 0;
return 0;
err: err:
return -1; setState(Volume::State_Idle);
return ret;
} }
bool Volume::isMountpointMounted(const char *path) { bool Volume::isMountpointMounted(const char *path) {

Loading…
Cancel
Save