Skip to main content
aboutsummaryrefslogtreecommitdiffstats
blob: 925f07745605d42ef4067be38e9b0bb648807328 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html lang="en">
<head>
<meta name="copyright" content="Copyright (c) IBM Corporation and others 2011. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="STYLESHEET" href="../../book.css" charset="ISO-8859-1" type="text/css">
<title>Incompatibilities between Eclipse 4.2 and 4.3</title>
</head>

<body>

<h1>Incompatibilities between Eclipse 4.2 and 4.3</h1>

<p>
  Eclipse changed in incompatible ways between 4.2 and 4.3 in ways that affect 
  plug-ins. The following entries describe the areas that changed and provide 
  instructions for migrating 4.2 plug-ins to 4.3. Note that you only need to look 
  here if you are experiencing problems running your 4.2 plug-in on 4.3.
</p>
<p>
See also the list of <a href="../removals.html">deprecated API removals</a> for this release.
</p>

<ol>
	<li><a href="#lucene">New incompatible Lucene version</a></li>
	<li><a href="#oleListeners">OleListeners must not dispose OleEvent arguments</a></li>
</ol>

<hr>
<!-- ############################################## -->
<h2>1. <a name="lucene">New incompatible Lucene version</a></h2>
<p><strong>What is affected:</strong> Clients that directly reference Lucene
API included in the platform.
</p>
<p><strong>Description:</strong> The Eclipse platform help system has migrated from 
Lucene 2.9.1 to Lucene 3.5. This change brings improved performance and many bug fixes in help search. 
However, Lucene itself has changed in incompatible ways between their 2.9 and 3.5 releases.
See the <a href="https://lucene.apache.org/core/old_versioned_docs//versions/3_0_3/changes/Changes.html#3.0.0">
Lucene Change Log</a> for complete details.
</p>
<p><strong>Action required:</strong> Clients that directly use Lucene APIs
should refer to the Lucene change log for details on what has changed.
</p>

<!-- ############################################## -->
<h2>2. <a name="oleListeners">OleListeners must not dispose OleEvent arguments</a></h2>
<p><strong>What is affected:</strong> Plug-ins that dispose the arguments (Variants) in received OleEvents.
</p>
<p><strong>Description:</strong> Prior to Eclipse 4.3, the arguments (Variants) in OleEvents were never
disposed by SWT, so an OleListener that disposed these arguments would not have a problem.  While it was never
stated that OleListeners should dispose these arguments, there were example snippets on the SWT page that incorrectly
did this.
<p>As of Eclipse 4.3, SWT now disposes these arguments after all appropriate OleListeners have been notified, in
order to fix a significant memory leak.  As a result, OleListeners that also dispose these arguments can cause
native COM objects to be over-released, which can lead them to be cleaned up prematurely and potentially crash.
</p>
<p><strong>Action required:</strong> Clients that hook OleListeners must ensure that they are not invoking dispose()
on the arguments (Variants) in received OleEvents.
</p>

<!-- ############################################## -->

</body>
</html>

Back to the top