| 2526 | |
| 2527 | |
| 2528 | void JBlob::internalClose(CheckStatusWrapper* user_status) |
| 2529 | { |
| 2530 | /************************************** |
| 2531 | * |
| 2532 | * g d s _ $ c l o s e _ b l o b |
| 2533 | * |
| 2534 | ************************************** |
| 2535 | * |
| 2536 | * Functional description |
| 2537 | * Abort a partially completed blob. |
| 2538 | * |
| 2539 | **************************************/ |
| 2540 | try |
| 2541 | { |
| 2542 | EngineContextHolder tdbb(user_status, this, FB_FUNCTION); |
| 2543 | check_database(tdbb); |
| 2544 | |
| 2545 | try |
| 2546 | { |
| 2547 | if (!getHandle()->BLB_close(tdbb)) |
| 2548 | getHandle()->blb_interface = NULL; |
| 2549 | blob = NULL; |
| 2550 | } |
| 2551 | catch (const Exception& ex) |
| 2552 | { |
| 2553 | transliterateException(tdbb, ex, user_status, "JBlob::close"); |
| 2554 | return; |
| 2555 | } |
| 2556 | } |
| 2557 | catch (const Exception& ex) |
| 2558 | { |
| 2559 | ex.stuffException(user_status); |
| 2560 | return; |
| 2561 | } |
| 2562 | |
| 2563 | successful_completion(user_status); |
| 2564 | } |
| 2565 | |
| 2566 | |
| 2567 | void JTransaction::commit(CheckStatusWrapper* user_status) |
nothing calls this directly
no test coverage detected