|
Lines 476-482
Link Here
|
| 476 |
{ |
476 |
{ |
| 477 |
AsyncMethodData data = (AsyncMethodData) state; |
477 |
AsyncMethodData data = (AsyncMethodData) state; |
| 478 |
AsyncMethodResult result = data.Result; |
478 |
AsyncMethodResult result = data.Result; |
| 479 |
object ret = data.Method.DynamicInvoke (data.Args); |
479 |
|
|
|
480 |
object ret; |
| 481 |
try { |
| 482 |
ret = data.Method.DynamicInvoke (data.Args); |
| 483 |
} catch (Exception ex) { |
| 484 |
if (result != null) { |
| 485 |
result.CompleteWithException (ex); |
| 486 |
return; |
| 487 |
} |
| 488 |
|
| 489 |
throw; |
| 490 |
} |
| 491 |
|
| 480 |
if (result != null) { |
492 |
if (result != null) { |
| 481 |
result.Complete (ret); |
493 |
result.Complete (ret); |
| 482 |
} |
494 |
} |
|
Lines 511-522
Link Here
|
| 511 |
} |
523 |
} |
| 512 |
#endif |
524 |
#endif |
| 513 |
|
525 |
|
|
|
526 |
AsyncMethodResult result = data.Result; |
| 527 |
object ret; |
| 528 |
|
| 514 |
try { |
529 |
try { |
| 515 |
AsyncMethodResult result = data.Result; |
530 |
ret = data.Method.DynamicInvoke (data.Args); |
| 516 |
object ret = data.Method.DynamicInvoke (data.Args); |
|
|
| 517 |
result.Complete (ret); |
531 |
result.Complete (ret); |
| 518 |
} |
532 |
} catch (Exception ex) { |
| 519 |
finally { |
533 |
result.CompleteWithException (ex); |
|
|
534 |
return; |
| 535 |
} finally { |
| 520 |
#if !MWF_ON_MSRUNTIME |
536 |
#if !MWF_ON_MSRUNTIME |
| 521 |
if (data.Stack != null) { |
537 |
if (data.Stack != null) { |
| 522 |
// whatever occurs we must revert to the original compressed |
538 |
// whatever occurs we must revert to the original compressed |