mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
*/
|
||||
package com.intellij.openapi.vfs;
|
||||
|
||||
import com.intellij.openapi.application.Application;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.vfs.impl.BulkVirtualFileListenerAdapter;
|
||||
import com.intellij.util.EventDispatcher;
|
||||
@@ -29,7 +30,12 @@ public abstract class DeprecatedVirtualFileSystem extends VirtualFileSystem {
|
||||
private final EventDispatcher<VirtualFileListener> myEventDispatcher = EventDispatcher.create(VirtualFileListener.class);
|
||||
|
||||
protected void startEventPropagation() {
|
||||
ApplicationManager.getApplication().getMessageBus().connect().subscribe(
|
||||
Application application = ApplicationManager.getApplication();
|
||||
if (application == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
application.getMessageBus().connect().subscribe(
|
||||
VirtualFileManager.VFS_CHANGES, new BulkVirtualFileListenerAdapter(myEventDispatcher.getMulticaster(), this));
|
||||
}
|
||||
|
||||
|
||||
@@ -206,12 +206,11 @@ public class FileContentQueue {
|
||||
result = myLoadedContentsQueue.poll();
|
||||
if (result == null) {
|
||||
VirtualFile virtualFileToLoad = myFilesToLoadQueue.poll();
|
||||
while (virtualFileToLoad != null) {
|
||||
if (virtualFileToLoad != null) {
|
||||
FileContent content = new FileContent(virtualFileToLoad);
|
||||
if (isValidFile(virtualFileToLoad)) {
|
||||
FileContent content = new FileContent(virtualFileToLoad);
|
||||
try {
|
||||
content.getBytes();
|
||||
return content;
|
||||
} catch (Throwable t) {
|
||||
if (t instanceof IOException || t instanceof InvalidVirtualFileAccessException) {
|
||||
LOG.info(t);
|
||||
@@ -219,8 +218,10 @@ public class FileContentQueue {
|
||||
LOG.error(t);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
content.setEmptyContent();
|
||||
}
|
||||
virtualFileToLoad = myFilesToLoadQueue.poll();
|
||||
return content;
|
||||
}
|
||||
|
||||
// take last content which is loaded by another thread
|
||||
|
||||
Reference in New Issue
Block a user