File more-java-versions.patch of Package icedtea-web

--- icedtea-web-1.8.8/configure.ac	2025-06-19 10:12:43.195497408 +0200
+++ icedtea-web-1.8.8/configure.ac	2025-06-19 10:13:01.432511512 +0200
@@ -186,9 +186,11 @@
 fi
 IT_CHECK_FOR_CLASS(COM_SUN_JNDI_TOOLKIT_URL_URLUTIL, [com.sun.jndi.toolkit.url.UrlUtil], [some.pkg], [$JAVA_NAMING])
 IT_CHECK_FOR_CLASS(SUN_NET_WWW_PROTOCOL_HTTP_HANDLER, [sun.net.www.protocol.http.Handler], [some.pkg], [$JAVA_BASE])
+if test "$enable_pluginjar" = yes ; then
 IT_CHECK_FOR_CLASS(SUN_APPLET_APPLETIMAGEREF, [sun.applet.AppletImageRef], [sun.applet], [$JAVA_DESKTOP])
-
 IT_CHECK_FOR_SUN_APPLET_ACCESSIBILITY
+fi
+
 IT_CHECK_GLIB_VERSION
 IT_CHECK_XULRUNNER_MIMEDESCRIPTION_CONSTCHAR
 IT_CHECK_XULRUNNER_REQUIRES_C11
--- icedtea-web-1.8.8/Makefile.am	2025-06-19 10:12:43.194999759 +0200
+++ icedtea-web-1.8.8/Makefile.am	2025-06-19 10:29:58.285161391 +0200
@@ -238,10 +238,10 @@
 	net.sourceforge.jnlp.controlpanel net.sourceforge.jnlp.event \
 	net.sourceforge.jnlp.runtime net.sourceforge.jnlp.security \
 	net.sourceforge.jnlp.security.viewer net.sourceforge.jnlp.services \
-	net.sourceforge.jnlp.tools net.sourceforge.jnlp.util \
-	sun.applet
+	net.sourceforge.jnlp.tools net.sourceforge.jnlp.util
 
 if ENABLE_PLUGINJAR
+export NETX_PKGS = ${NETX_PKGS} sun.applet
 export ICEDTEAPLUGIN_TARGET = stamps/liveconnect-dist.stamp
 export PLUGIN_DIR=$(TOP_BUILD_DIR)/plugin/icedteanp
 export PLUGIN_SRCDIR=$(TOP_SRC_DIR)/plugin/icedteanp
@@ -894,12 +902,12 @@
 	mkdir "$$PLAIN_DOCS_TARGET_DIR" ; \
 	mkdir "$$MAN_DOCS_TARGET_DIR" ; \
 	HTML_DOCS_INDEX="$$HTML_DOCS_TARGET_DIR/index.html" ; \
-	TP_COMMAND="$(SYSTEM_JRE_DIR)/bin/java -cp $(NETX_DIR) net.sourceforge.jnlp.util.docprovider.TextsProvider" ; \
+	TP_COMMAND="$(SYSTEM_JRE_DIR)/bin/java $(JAVA_EXPORTS) -cp $(NETX_DIR) net.sourceforge.jnlp.util.docprovider.TextsProvider" ; \
 	TP_TAIL="false $(FULL_VERSION)" ; \
 	LANG_BACKUP=$$LANG ; \
 	echo "<html><head><title>$(PLUGIN_VERSION)</title></head>" > "$$HTML_DOCS_INDEX" ; \
 	echo "<body><h3>$(PLUGIN_VERSION) docs:</h3>"  >> "$$HTML_DOCS_INDEX" ; \
-	for LANG_ID in en_US.UTF-8 cs_CZ.UTF-8 pl_PL.UTF-8 de_DE.UTF-8 ;  do \
+	for LANG_ID in en_US.UTF-8 ;  do \
 	  ID=`echo "$$LANG_ID" | head -c 2` ; \
 	  ENCOD=`echo "$$LANG_ID" | tail -c 6 -` ; \
 	  export LANG=$$LANG_ID; \
@@ -956,11 +964,18 @@
 	(cd $(NETX_DIR) ; \
 	 mkdir -p lib ; \
 	 $(SYSTEM_JDK_DIR)/bin/jar cfm lib/classes.jar \
-	  $(TOP_BUILD_DIR)/netx.manifest javax/jnlp net sun; \
+	  $(TOP_BUILD_DIR)/netx.manifest javax/jnlp net; \
 	 cp -pPR $(SRC_DIR_LINK) $(NETX_SRCDIR) src; \
 	 find src -type f -exec chmod 640 '{}' ';' -o -type d -exec chmod 750 '{}' ';'; \
 	 cd src ; \
-	 $(ZIP) -qr $(NETX_DIR)/lib/src.zip javax net sun)
+	 $(ZIP) -qr $(NETX_DIR)/lib/src.zip javax net)
+if ENABLE_PLUGINJAR
+	(cd $(NETX_DIR) ; \
+	 $(SYSTEM_JDK_DIR)/bin/jar uf lib/classes.jar sun \
+	  $(TOP_BUILD_DIR)/netx.manifest javax/jnlp net; \
+	 cd src ; \
+     $(ZIP) -qr $(NETX_DIR)/lib/src.zip sun)
+endif    
 	mkdir -p stamps
 	touch $@
 
--- icedtea-web-1.8.8/netx/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java	2025-06-19 10:12:43.203915678 +0200
+++ icedtea-web-1.8.8/netx/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java	2025-06-19 10:13:01.433203336 +0200
@@ -18,6 +18,7 @@
 
 import static net.sourceforge.jnlp.runtime.Translator.R;
 
+import java.awt.AWTPermission;
 import java.awt.Window;
 import java.net.SocketPermission;
 import java.security.AccessControlException;
@@ -343,7 +344,6 @@
      * warning banner, and adds the window to the list of windows to
      * be disposed when the calling application exits.
      */
-    @Override
     public boolean checkTopLevelWindow(Object window) {
         ApplicationInstance app = getApplication();
 
@@ -362,7 +362,12 @@
         // todo: set awt.appletWarning to custom message
         // todo: logo on with glass pane on JFrame/JWindow?
 
-        return super.checkTopLevelWindow(window);
+        try {
+            checkPermission(new AWTPermission("showWindowWithoutWarningBanner"));
+            return true;
+        } catch (Exception se) {
+            return false;
+        }
     }
 
     /**
@@ -432,7 +437,6 @@
      * @exception  SecurityException  if the caller does not have
      *             permission to accesss the AWT event queue.
      */
-    @Override
     public void checkAwtEventQueueAccess() {
         /*
          * this is the templace of the code that should allow applets access to
@@ -446,7 +450,7 @@
         // If we're about to allow access to the main EventQueue,
         // and anything untrusted is on the class context stack,
         // disallow access.
-        super.checkAwtEventQueueAccess();
+        checkPermission(new AWTPermission("accessEventQueue"));
         // }
     }
 
openSUSE Build Service is sponsored by