Hi! > So I've taken a look at the csup source. > > The problem here is the updater thread setting the "closed" state > (fixups_closed()) before calling updater_batch() again to handle > fixups. > > Checking for size != 0 at that point may not be valid at the list size > may actually be 0 for a short period of time. > > What about this patch: > > Index: updater.c > =================================================================== > --- updater.c (revision 224905) > +++ updater.c (working copy) > _at__at_ -240,9 +240,9 _at__at_ > * Make sure to close the fixups even in case of an error, > * so that the lister thread doesn't block indefinitely. > */ > - fixups_close(up->config->fixups); > if (!error) > error = updater_batch(up, 1); > + fixups_close(up->config->fixups); > switch (error) { > case UPDATER_ERR_PROTO: > xasprintf(&args->errmsg, "Updater failed: > Protocol error"); I've tried this patch. Now csup "hangs" before handling fixups. So there is no message "Applying fixups..." at all. -- Alexander ZagrebinReceived on Mon Sep 19 2011 - 03:53:09 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:18 UTC