From: Steve Lhomme <robux4@ycbcr.xyz>
Date: Wed, 18 Sep 2024 12:57:04 +0200
Subject: lua: don't use | operator on VLC errors

This could end up with unknown/invalid error values.

(cherry picked from commit 586b28f4aab1f936d666bd3dab7904793c3012d7)
---
 modules/lua/extension.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/modules/lua/extension.c b/modules/lua/extension.c
index cc6bffc..c8bfe22 100644
--- a/modules/lua/extension.c
+++ b/modules/lua/extension.c
@@ -971,7 +971,10 @@ int lua_ExecuteFunctionVa( extensions_manager_t *p_mgr, extension_t *p_ext,
         i_ret = VLC_EGENERIC;
     }
 
-    i_ret |= lua_DialogFlush( L );
+    if (i_ret != VLC_SUCCESS)
+        lua_DialogFlush( L );
+    else
+        i_ret = lua_DialogFlush( L );
 
 exit:
     return i_ret;
@@ -1013,7 +1016,10 @@ int lua_ExtensionTriggerMenu( extensions_manager_t *p_mgr,
         i_ret = VLC_EGENERIC;
     }
 
-    i_ret |= lua_DialogFlush( L );
+    if (i_ret != VLC_SUCCESS)
+        lua_DialogFlush( L );
+    else
+        i_ret = lua_DialogFlush( L );
     if( i_ret < VLC_SUCCESS )
     {
         msg_Dbg( p_mgr, "Something went wrong in %s (%s:%d)",
