| 1686 | struct ZeroTerminatedArrayInOut : FallbackInOut { |
| 1687 | using FallbackInOut::FallbackInOut; |
| 1688 | bool release(JSContext* cx, GjsFunctionCallState* state, GIArgument*, |
| 1689 | GIArgument* out_arg) override { |
| 1690 | GITransfer transfer = |
| 1691 | state->call_completed() ? m_transfer : GI_TRANSFER_NOTHING; |
| 1692 | GIArgument* original_out_arg = &state->inout_original_cvalue(m_arg_pos); |
| 1693 | if (!gjs_gi_argument_release_in_array(cx, transfer, m_type_info, |
| 1694 | original_out_arg)) |
| 1695 | return false; |
| 1696 | |
| 1697 | transfer = |
| 1698 | state->call_completed() ? m_transfer : GI_TRANSFER_EVERYTHING; |
| 1699 | return gjs_gi_argument_release_out_array(cx, transfer, m_type_info, |
| 1700 | out_arg); |
| 1701 | } |
| 1702 | }; |
| 1703 | |
| 1704 | struct ZeroTerminatedArrayIn : FallbackIn { |
nothing calls this directly
no test coverage detected