Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 163896 Details for
Bug 308194
[Compatibility] Uninjection failure in SelectionService makes compatibility layer unusable
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Patch
patch DI outside.txt (text/plain), 2.57 KB, created by
Oleg Besedin
on 2010-04-06 10:25:38 EDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Oleg Besedin
Created:
2010-04-06 10:25:38 EDT
Size:
2.57 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.e4.core.contexts >Index: src/org/eclipse/e4/core/internal/contexts/ContextObjectSupplier.java >=================================================================== >RCS file: /cvsroot/eclipse/e4/org.eclipse.e4.ui/bundles/org.eclipse.e4.core.contexts/src/org/eclipse/e4/core/internal/contexts/ContextObjectSupplier.java,v >retrieving revision 1.1 >diff -u -r1.1 ContextObjectSupplier.java >--- src/org/eclipse/e4/core/internal/contexts/ContextObjectSupplier.java 5 Apr 2010 19:53:04 -0000 1.1 >+++ src/org/eclipse/e4/core/internal/contexts/ContextObjectSupplier.java 6 Apr 2010 14:22:49 -0000 >@@ -28,16 +28,14 @@ > final private String[] keys; > final private IInjector injector; > final private IRequestor requestor; >- final private AbstractObjectSupplier supplier; > final private IEclipseContext context; > > public ContextInjectionListener(IEclipseContext context, Object[] result, String[] keys, >- IInjector injector, IRequestor requestor, AbstractObjectSupplier supplier) { >+ IInjector injector, IRequestor requestor) { > this.result = result; > this.keys = keys; > this.injector = injector; > this.requestor = requestor; >- this.supplier = supplier; > this.context = context; > } > >@@ -53,14 +51,20 @@ > result[i] = IInjector.NOT_A_VALUE; // TBD make sure this still creates > // dependency on the key > } >- } else if (event.getEventType() == ContextChangeEvent.DISPOSE) { >- injector.disposed(supplier); >+ return true; >+ } >+ >+ IEclipseContext originatingContext = event.getContext(); >+ ContextObjectSupplier originatingSupplier = getObjectSupplier(originatingContext, injector); >+ if (event.getEventType() == ContextChangeEvent.DISPOSE) { >+ injector.disposed(originatingSupplier); > return false; > } else if (event.getEventType() == ContextChangeEvent.UNINJECTED) { >- injector.uninject(event.getArguments()[0], supplier); >+ injector.uninject(event.getArguments()[0], originatingSupplier); > return false; >- } else >- injector.update(new IRequestor[] { requestor }, supplier); >+ } else { >+ injector.update(new IRequestor[] { requestor }, originatingSupplier); >+ } > return true; > } > >@@ -150,7 +154,7 @@ > > if (requestor != null && requestor.shouldTrack()) { // only track if requested > IRunAndTrack trackable = new ContextInjectionListener(context, result, keys, injector, >- requestor, this); >+ requestor); > context.runAndTrack(trackable, null); > } else { > for (int i = 0; i < descriptors.length; i++) {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 308194
: 163896