Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Watson2011-11-15 16:47:10 +0000
committerThomas Watson2011-11-15 16:47:10 +0000
commit08eef7fc562968530312ced2d25b4937718b5451 (patch)
treeb1543101af383da75aa7592ea4ba481c384fa46c
parent6299155b2708b26f4b36084d7c67a9cdca977e86 (diff)
parent5a42c6ea2f82c3769228b69b3b1e4d706e0f0f4e (diff)
downloadrt.equinox.framework-08eef7fc562968530312ced2d25b4937718b5451.tar.gz
rt.equinox.framework-08eef7fc562968530312ced2d25b4937718b5451.tar.xz
rt.equinox.framework-08eef7fc562968530312ced2d25b4937718b5451.zip
Merge branch 'R3_6_maintenance' into R3_6_maintenance_Java7R36x_v20111115-1500
Conflicts: bundles/org.eclipse.osgi.tests/.gitignore bundles/org.eclipse.osgi/.gitignore
-rw-r--r--bundles/org.eclipse.osgi.tests/.gitignore1
-rw-r--r--bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/composites/CompositeShareTests.java21
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/file.txt1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/META-INF/MANIFEST.MF5
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/file1.txt1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/file2.txt1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/file1.txt1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/file2.txt1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren(1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren(.txt1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren)1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren).txt1
-rw-r--r--bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/plugin.xml4
-rw-r--r--bundles/org.eclipse.osgi/.gitignore5
-rw-r--r--bundles/org.eclipse.osgi/core/composite/org/eclipse/osgi/internal/composite/CompositeImpl.java3
15 files changed, 43 insertions, 5 deletions
diff --git a/bundles/org.eclipse.osgi.tests/.gitignore b/bundles/org.eclipse.osgi.tests/.gitignore
index 6035f08ac..9877a0e16 100644
--- a/bundles/org.eclipse.osgi.tests/.gitignore
+++ b/bundles/org.eclipse.osgi.tests/.gitignore
@@ -2,4 +2,3 @@
/bundle_tests/
/inner/
.DS_Store
-
diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/composites/CompositeShareTests.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/composites/CompositeShareTests.java
index f44adf87a..2e5e3d73f 100644
--- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/composites/CompositeShareTests.java
+++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/osgi/tests/composites/CompositeShareTests.java
@@ -295,6 +295,27 @@ public class CompositeShareTests extends AbstractCompositeTests {
uninstallCompositeBundle(compositeBundle);
}
+ public void testCompositeShare04d_Bug363561() {
+ // create a composite bundle with one bundle that exports some api to parent
+ // install one bundle into parent that uses API from child
+ Map linkManifest = new HashMap();
+ linkManifest.put(Constants.BUNDLE_SYMBOLICNAME, getName()); //$NON-NLS-1$
+ linkManifest.put(Constants.BUNDLE_VERSION, "1.0.0"); //$NON-NLS-1$
+ linkManifest.put(Constants.EXPORT_PACKAGE, "test.link.a; attr1=\"value1\"; uses:=\"org.osgi.framework, test.link.a.params\", test.link.a.params; attr2=\"value2\""); //$NON-NLS-1$
+ CompositeBundle compositeBundle = createCompositeBundle(linkBundleFactory, "testCompositeShare04a", null, linkManifest, false, false); //$NON-NLS-1$
+ Bundle constituent = installIntoChild(compositeBundle.getCompositeFramework(), "test.link.a"); //$NON-NLS-1$
+ Bundle testClient = installIntoCurrent("test.link.a.client"); //$NON-NLS-1$
+ startCompositeBundle(compositeBundle, false);
+
+ try {
+ constituent.uninstall();
+ } catch (BundleException e) {
+ fail("Error on uninstall of constituent.", e);
+ }
+ stopCompositeBundle(compositeBundle);
+ uninstallCompositeBundle(compositeBundle);
+ }
+
public void testCompositeShare05() {
// create a composite bundle with one bundle that exports some api to child
// install one bundle into child that uses API from parent
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/file.txt b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/file.txt
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/file.txt
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/META-INF/MANIFEST.MF b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/META-INF/MANIFEST.MF
new file mode 100644
index 000000000..a7adf220c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/META-INF/MANIFEST.MF
@@ -0,0 +1,5 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: test
+Bundle-SymbolicName: bundle.resource.test
+Bundle-Version: 1.0.0
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/file1.txt b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/file1.txt
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/file1.txt
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/file2.txt b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/file2.txt
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/file2.txt
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/file1.txt b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/file1.txt
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/file1.txt
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/file2.txt b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/file2.txt
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/file2.txt
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren( b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren(
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren(
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren(.txt b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren(.txt
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren(.txt
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren) b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren)
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren)
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren).txt b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren).txt
new file mode 100644
index 000000000..8d043451c
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/folder/paren).txt
@@ -0,0 +1 @@
+Test Content \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/plugin.xml b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/plugin.xml
new file mode 100644
index 000000000..40a35562f
--- /dev/null
+++ b/bundles/org.eclipse.osgi.tests/test_files/resourcetests/bundles/test/plugin.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+</plugin>
diff --git a/bundles/org.eclipse.osgi/.gitignore b/bundles/org.eclipse.osgi/.gitignore
index 10b5cec9d..324eb6720 100644
--- a/bundles/org.eclipse.osgi/.gitignore
+++ b/bundles/org.eclipse.osgi/.gitignore
@@ -5,7 +5,4 @@ console.jar
core.jar
defaultAdaptor.jar
eclipseAdaptor.jar
-resolver.jar
-/generated/
-.DS_Store
-
+resolver.jar \ No newline at end of file
diff --git a/bundles/org.eclipse.osgi/core/composite/org/eclipse/osgi/internal/composite/CompositeImpl.java b/bundles/org.eclipse.osgi/core/composite/org/eclipse/osgi/internal/composite/CompositeImpl.java
index f900dc6fa..143027660 100644
--- a/bundles/org.eclipse.osgi/core/composite/org/eclipse/osgi/internal/composite/CompositeImpl.java
+++ b/bundles/org.eclipse.osgi/core/composite/org/eclipse/osgi/internal/composite/CompositeImpl.java
@@ -167,6 +167,9 @@ public class CompositeImpl extends CompositeBase implements CompositeBundle {
}
protected void stopHook() throws BundleException {
+ // bug 363561; need to make sure the class loader is created
+ // before stopping the composite framework
+ checkClassLoader();
trackerManager.stoppedComposite();
// do not stop the framework unless we are persistently stopped
if ((bundledata.getStatus() & Constants.BUNDLE_STARTED) == 0)

Back to the top