Skip to content

Commit 3976215

Browse files
committed
fix: bug when reading an empty "__removePackages.json" file
1 parent 83905a1 commit 3976215

2 files changed

Lines changed: 8 additions & 8 deletions

File tree

shared/packages/worker/src/worker/accessorHandlers/lib/GenericFileOperations.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -160,13 +160,13 @@ export class GenericFileOperationsHandler {
160160
if (this.fileHandler.getPackagesToRemove) return this.fileHandler.getPackagesToRemove()
161161

162162
const exists = await this.fileHandler.fileExists(this.deferRemovePackagesPath)
163-
if (exists) {
164-
const buf = await this.fileHandler.readFile(this.deferRemovePackagesPath)
165-
const text = buf.toString('utf8')
166-
const packagesToRemove: DelayPackageRemovalEntry[] = JSON.parse(text)
167-
if (!Array.isArray(packagesToRemove)) return []
168-
return packagesToRemove
169-
} else return []
163+
if (!exists) return []
164+
const buf = await this.fileHandler.readFile(this.deferRemovePackagesPath)
165+
const text = buf.toString('utf8')
166+
if (text.length === 0) return []
167+
const packagesToRemove: DelayPackageRemovalEntry[] = JSON.parse(text)
168+
if (!Array.isArray(packagesToRemove)) return []
169+
return packagesToRemove
170170
}
171171
/** Update the deferred-remove-packages list */
172172
private async updatePackagesToRemove(

shared/packages/worker/src/worker/accessorHandlers/lib/json-write-file.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,7 @@ export class JSONWriteFilesBestEffortHandler extends JSONWriteHandler {
359359
if (oldValue?.str === newValueStr) {
360360
// do nothing
361361
} else {
362-
if (newValueStr === undefined) {
362+
if (newValueStr === undefined || newValueStr === '') {
363363
// undefined means remove the file
364364
await this.fileHandler.unlinkIfExists(tmpFilePath)
365365
await this.fileHandler.unlinkIfExists(filePath)

0 commit comments

Comments
 (0)