[ 
https://issues.apache.org/jira/browse/MYFACES-4671?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17856857#comment-17856857
 ] 

Werner Punz commented on MYFACES-4671:
--------------------------------------

Btw the code can be written a little bit more tersely:
 
let message = JSON.parse(event?.data ?? null);
 
Typescript has an Elvis operator, so no need for explicity undefined checks 
anymore!

I will prepare a new version of the upstream codebase then we can easily get 
the new code into all branches!

 

> PushImpl.ts Socket#onerror attempting to use undefined variable
> ---------------------------------------------------------------
>
>                 Key: MYFACES-4671
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4671
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 4.0.2, 4.1.0-RC2
>         Environment: OS: Windows 11
> Java version 17.0.7
>            Reporter: Thomas Smith
>            Assignee: Werner Punz
>            Priority: Minor
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> While running some OpenLiberty FAT tests, specifically 
> io.openliberty.org.apache.myfaces.4.0_fat/WebSocketTests, we discovered a 
> small bug where JSON.parse(event.data) was running where event.data was 
> undefined.
> Here is the line it occurs: 
> [https://github.com/apache/myfaces/blob/dae36dde5cc42208d034dda23107ad79f68ecc3a/api/src/client/typescript/faces/impl/PushImpl.ts#L156]
> Volodymyr created a GitHub issue describing the issue here: [Faces 4.0 Fix 
> WebSocketTests so that "onerror listener" occurs -  Issue #27598 -  
> OpenLiberty/open-liberty 
> (github.com)|https://github.com/OpenLiberty/open-liberty/issues/27598]
> Proposed Solution: Change
> {code:java}
>  JSON.parse(event.data) {code}
> to
> {code:java}
> JSON.parse(event.data === undefined ? null : event.data){code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to