In the first change to src/mountall.c (in run_mount), mnt->error can only be ERROR_NONE or ERROR_BORED due to the check at the top of this function. The effect of that change is therefore that mnt->error may be ERROR_BORED in the period between spawn being called and run_mount_finished being called from the event loop (this isn't a problem in the other two branches of that if statement because they both pass wait == TRUE to spawn). I think that this is wrong; it means that, if the mount takes long enough that plymouth_update is called in the meantime, then the message "The disk drive for %s is not ready yet or not present" will be displayed even though mount is running on that device.
So, let's analyse the second and third changes. Those move 'mnt->error = ERROR_NONE' down to below the 'if (status)' block. The only case whose behaviour that can change is that where mount exits non-zero on a remote filesystem. It appears that currently mountall is intentionally not printing errors about those; see bug 504224. I can see that it might make some sense to zero out any previous ERROR_BORED error, for consistency, but that's the only effect I can see this having. I'm certainly not opposed to this kind of fix, and I'm sorry that we've taken so long to respond to your patch; the bug as described is definitely an important one to fix. However, I want to understand patches completely before I apply them, to make sure that I'm not breaking something else in the process. Could you explain the exact situation where this patch changes behaviour, with reference to the code? -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/655616 Title: Press S or M does not work for more than one partition on error -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs