Skip to content

Commit 4911204

Browse files
committed
fix: sync all files when a HMR update is not possible in order to avoid multiple HMR syncs after restart
1 parent 5a45604 commit 4911204

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

lib/controllers/run-controller.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -360,11 +360,13 @@ export class RunController extends EventEmitter implements IRunController {
360360

361361
try {
362362
const platformLiveSyncService = this.$liveSyncServiceResolver.resolveLiveSyncService(device.deviceInfo.platform);
363+
const allAppFiles = (data.hmrData && data.hmrData.fallbackFiles) || data.files;
364+
const filesToSync = data.hasOnlyHotUpdateFiles ? data.files : allAppFiles;
363365
const watchInfo = {
364366
liveSyncDeviceData: deviceDescriptor,
365367
projectData,
366368
filesToRemove: <any>[],
367-
filesToSync: data.files,
369+
filesToSync,
368370
hmrData: data.hmrData,
369371
useHotModuleReload: liveSyncInfo.useHotModuleReload,
370372
force: liveSyncInfo.force,

lib/services/webpack/webpack-compiler-service.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,8 +264,9 @@ export class WebpackCompilerService extends EventEmitter implements IWebpackComp
264264
this.expectedHashes[platform] = nextHash;
265265

266266
const emittedHotUpdatesAndAssets = isHashValid ? _.difference(allEmittedFiles, chunkFiles) : allEmittedFiles;
267+
const fallbackFiles = chunkFiles.concat(emittedHotUpdatesAndAssets.filter(f => f.indexOf("hot-update") === -1));
267268

268-
return { emittedFiles: emittedHotUpdatesAndAssets, fallbackFiles: chunkFiles, hash: currentHash };
269+
return { emittedFiles: emittedHotUpdatesAndAssets, fallbackFiles, hash: currentHash };
269270
}
270271

271272
private getCurrentHotUpdateHash(emittedFiles: string[]) {

0 commit comments

Comments
 (0)