Since ``<buffer>`` calls ``malloc``, might be better to put this in a ``with-disposal``?