mekras/php-speller

Calling Aspell::getSupportedLanguages() breaks checkText()

Closed this issue · 1 comments

When calling getSupportedLanguages() before checkText(), even the arguments are ok, the process command is not updated.

###########################
/vendor/mekras/php-speller/src/ExternalSpeller.php (line 218)
########## DEBUG ##########
[
	(int) 0 => '/usr/bin/aspell',
	(int) 1 => '--encoding=UTF-8',
	(int) 2 => '-a',
	(int) 3 => '--lang=en'
]
###########################
/vendor/mekras/php-speller/src/ExternalSpeller.php (line 224)
########## DEBUG ##########
object(Symfony\Component\Process\Process) {
	[private] callback => null
	[private] hasCallback => false
	[private] commandline => [
		(int) 0 => '/usr/bin/aspell',
		(int) 1 => 'dump',
		(int) 2 => 'dicts'
	]
	[private] cwd => '/var/www/.../trunk/src'
	[private] env => null
	[private] input => null
	[private] starttime => (float) 1601305301.2421
	[private] lastOutputTime => (float) 1601305301.2454
	[private] timeout => (float) 600
	[private] idleTimeout => null
	[private] exitcode => (int) 0
	[private] fallbackStatus => []
	[private] processInformation => [
		'command' => 'exec '/usr/bin/aspell' 'dump' 'dicts'',
		'pid' => (int) 868,
		'running' => false,
		'signaled' => false,
		'stopped' => false,
		'exitcode' => (int) 0,
		'termsig' => (int) 0,
		'stopsig' => (int) 0
	]
	[private] outputDisabled => false
	[private] stdout => resource
	[private] stderr => resource
	[private] process => unknown
	[private] status => 'terminated'
	[private] incrementalOutputOffset => (int) 0
	[private] incrementalErrorOutputOffset => (int) 0
	[private] tty => false
	[private] pty => false
	[private] useFileHandles => false
	[private] processPipes => object(Symfony\Component\Process\Pipes\UnixPipes) {
		pipes => []
		[private] ttyMode => false
		[private] ptyMode => false
		[private] haveReadSupport => true
	}
	[private] latestSignal => null
	[private] sigchild => false
}

Adding $this->resetProcess(); to getSupportedLanguages() fixes it.

Fixed in 2.3.0