Unable to open .PDF files from web application after updating to Adobe 9.3.3

  • 7007013
  • 07-Oct-2010
  • 26-Apr-2012

Environment

Novell SecureLogin
NSL7.0.1
Acrobat Reader 9.3.3

Situation

In-house web based application has links to .PDF forms that call"javascript:openWindowPDF()."  When this works users click on a link which
 opens a .PDF document.  

This fails after updating to Adobe 9.3.3. 
With Acrobat Reader versions greater than 9.3, when users try to open the form, it either will not open, or will crash the browser, or it will only open once.

Problem goes away if NSL7 is uninstalled.
Problem does not occur with NSL6.1.x

Resolution

Fixed with NSL7.0.1 HotFix5.

Additional Information



Debugging Notes:


Among other actions, OpenWindowPDF() launches a dummy window before launching the window with the desired content. This dummy window has the same name as the "real" window.

The observed problem occurs if the actual window is launhced without pausing to ensure the dummy window is  closed. Since windows created in IE are required to each have a unique name, having both open at the same time causes the crash.  NSL 7 slows down the unloading of the currentDialog (dummy window) just enough that first window is still open when the second window of the same name attempts to open.

This can be fixed in JavaScript by simply waiting for the first window to be closed before opening the second window.  Add the following:

 while(!currentDialog.closed);

Example:

  currentDialog = window.open("dummy.html", windowName, "width=20 height=20
left=50 top=50");
  if (currentDialog != null)
     currentDialog.close();

## crashes on the following call because close didn't finish yet and window with windowName is still active


  currentDialog = window.open("real.html", windowName, "width=20 height=20
left=50 top=70", true);


TO FIX THIS PROBLEM:
## insert the following before the second "currentDialog" section:

 while(!currentDialog.closed)


Feedback service temporarily unavailable. For content questions or problems, please contact Support.