Properly dispose of native memory handles if an exception is thrown
in the Interpreter constructor. This change landed previously but was rolled
back due to a bug in how the ByteBuffer constructor argument was stored.
That has been addressed in this change.
PiperOrigin-RevId: 351844621
Change-Id: Ibd335a4d3a4412a910d859af9f3a5b0a60829cc0