X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=fishdescriptor%2Ffishdescriptor;h=d4c745a37d6aef57db842c4e77c2915322d6183e;hb=ce86dddf6ab90c5dc5d8afebf2df123333cf8aed;hp=20eddfef05936e38aa17a0bc29bcd8f8ebe2d58c;hpb=7284668b47fd883a654edd710a5700cd60f1f3de;p=chiark-utils.git diff --git a/fishdescriptor/fishdescriptor b/fishdescriptor/fishdescriptor index 20eddfe..d4c745a 100755 --- a/fishdescriptor/fishdescriptor +++ b/fishdescriptor/fishdescriptor @@ -13,7 +13,7 @@ donor = None usage = '''fishdescriptor [-p|--pid] ... [-p|--pid ...] s - [=] + [=] fish the openfile referenced by descriptor in (the most recent) and keep a descriptor onto it; and, optionally, give it the number for exec @@ -35,7 +35,10 @@ fdmap = { } # fdmap[nominal] = (actual, Donor, there) def implement_pending(): - actuals = donor.fish([pend[1] for pend in pending]) + try: actuals = donor.fish([pend[1] for pend in pending]) + except fishdescriptor.fish.Error as e: + print('fishdescriptor error: %s' % e, file=sys.stderr) + sys.exit(127) assert(len(actuals) == len(pending)) for (nominal, there), actual in zip(pending, actuals): overwriting_info = fdmap.get(nominal)