Project

General

Profile

Bug #9738

Infinite loop/memory leak caused by ENTRY trigger on current-window

Added by Razvan-Nicolae Chichirau over 1 year ago. Updated 10 months ago.

Status:
Test
Priority:
Normal
Target version:
-
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:
version_reported:
version_resolved:
reviewer:
production:
No
env_name:
topics:

History

#1 Updated by Razvan-Nicolae Chichirau over 1 year ago

The faulty testcase is this:

def var f1 as char view-as fill-in.
define frame f f1.

enable all with frame f.

on "entry" of current-window do:
    message "entry current-window" view-as alert-box.
end.

wait-for window-close of current-window.

The problem is seen only on the web version of the GUI. FWD allows you to get past the login screen + loading bar, but then it gets stuck in an infinite loop. Debugging the web javascript, I see that it is continuously processing MSG_DRAW events in p2j.socket.js.

#2 Updated by Razvan-Nicolae Chichirau 10 months ago

  • Assignee set to Razvan-Nicolae Chichirau
  • Status changed from New to WIP

Web GUI is stuck in p2j.canvas_renderer.js -> replay() due to using the same variable for looping:

for (var i = 0; i < len; i++)
{
   ...
   if (next.clip)
   {
      for (var i = 0; i < n; i++) { ... }
   }
}

The i variable keeps resetting on the second for-loop, which will prevent it from reaching len in order to break out, generating an infinite loop.

#3 Updated by Razvan-Nicolae Chichirau 10 months ago

  • % Done changed from 0 to 100
  • Status changed from WIP to Review
  • reviewer Hynek Cihlar added

Commited on 9738a/rev. 16177.

Hynek: Please review.

#4 Updated by Hynek Cihlar 10 months ago

  • Status changed from Review to Internal Test

Code review 9738a. The changes look good. Surprising we didn't notice this earlier. Please go ahead and regression test.

#5 Updated by Razvan-Nicolae Chichirau 10 months ago

I'll do:
  • Smoke-tests on 2 customer + demo apps on web
  • check some UI related tests
  • verify the unit tests from customers

ChUI regression + Swing testing is not necessary because the changes only take effect on Web GUI.

#6 Updated by Razvan-Nicolae Chichirau 10 months ago

Razvan-Nicolae Chichirau wrote:

I'll do:
  • Smoke-tests on 2 customer + demo apps on web
  • check some UI related tests
  • verify the unit tests from customers

ChUI regression + Swing testing is not necessary because the changes only take effect on Web GUI.

The testing plan passed. Can we merge this?

#7 Updated by Radu Apetrii 10 months ago

  • Status changed from Internal Test to Merge Pending

Razvan-Nicolae Chichirau wrote:

The testing plan passed. Can we merge this?

Yes, indeed. You may merge 9738a now.

#8 Updated by Razvan-Nicolae Chichirau 10 months ago

  • Status changed from Merge Pending to Test

Branch 9738a was merged to trunk rev 16183 and archived.

Also available in: Atom PDF