1
0
Fork 0
mirror of https://we.phorge.it/source/arcanist.git synced 2024-11-21 14:22:40 +01:00

T15064: Several arcanist PHP 8.1 compat issues on Windows

Summary:
Ran into `strlen`/`strpos` issues while using Arcanist on Windows:
- Running `arc version` when not in a project/repository directory blew up (may not be specific to Windows).
- Determining mime type of binary file in repository fails.

Refs T15064

Test Plan: Ran diff including a binary file. Ran `arc version` when not in a project/repository directory.

Reviewers: O1 Blessed Committers, avivey

Reviewed By: O1 Blessed Committers, avivey

Subscribers: avivey, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15064

Differential Revision: https://we.phorge.it/D25534
This commit is contained in:
Christopher Speck 2024-02-05 19:26:48 -05:00
parent 6c7caf3572
commit 8ef1ead6ac
2 changed files with 4 additions and 4 deletions

View file

@ -275,7 +275,7 @@ final class Filesystem extends Phobject {
$trap->destroy();
if (!$ok) {
if (strlen($err)) {
if ($err !== null && strlen($err)) {
throw new FilesystemException(
$to,
pht(
@ -307,7 +307,7 @@ final class Filesystem extends Phobject {
* @task file
*/
public static function remove($path) {
if (!strlen($path)) {
if ($path == null || !strlen($path)) {
// Avoid removing PWD.
throw new Exception(
pht(
@ -673,7 +673,7 @@ final class Filesystem extends Phobject {
}
// If we come back with an encoding, strip it off.
if (strpos($mime_type, ';') !== false) {
if ($mime_type !== null && strpos($mime_type, ';') !== false) {
list($type, $encoding) = explode(';', $mime_type, 2);
$mime_type = $type;
}

View file

@ -289,7 +289,7 @@ final class ArcanistWorkingCopyIdentity extends Phobject {
}
public function readLocalArcConfig() {
if (strlen($this->localMetaDir)) {
if ($this->localMetaDir !== null && strlen($this->localMetaDir)) {
$local_path = Filesystem::resolvePath('arc/config', $this->localMetaDir);
$console = PhutilConsole::getConsole();