filesystem
filesystem copied to clipboard
0.2.x: error saving binary data.
I'm having some issues saving binary data with the child process adapter in the 0.2.x branch.
Upon calling json_encode
to pipe the contents of the file from the parent process to the child process the following error occurs:
Malformed UTF-8 characters, possibly incorrectly encoded
Would it be an idea to encode the contents of the file to Base64 first and decode it in the child process?
Something like this:
\React\Filesystem\ChildProcess\File::putContents
$contents = base64_encode($contents);
return childProcessPromiseClosure(Loop::get(), function () use ($path, $contents, $flags): array {
return ['size_written' => file_put_contents($path, base64_decode($contents), $flags)];
})->then(static fn (array $data) => (int)$data['size_written']);
What kind of binary data are you attempting to put through it? Will, add tests to support this.
Right now I'm trying with an image. Textual data works as designed.