[
https://issues.apache.org/jira/browse/THRIFT-6306?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jens Geyer updated THRIFT-6306:
-------------------------------
Fix Version/s: (was: 0.26.0)
> Lua: checkDeclaredSize raises a bare Lua error when the size limit is nil
> -------------------------------------------------------------------------
>
> Key: THRIFT-6306
> URL: https://issues.apache.org/jira/browse/THRIFT-6306
> Project: Thrift
> Issue Type: Bug
> Components: Lua - Library
> Reporter: Jens Geyer
> Priority: Minor
>
> h2. Problem
> {{TTransportBase:checkDeclaredSize(size, limit)}} in
> {{lib/lua/TTransport.lua}} evaluates {{if size > limit then ...}}. When
> {{limit}} is {{nil}}, Lua raises a bare runtime error (_attempt to compare
> number with nil_) instead of a {{TTransportException}}, so the failure
> escapes the usual {{TException}} handling.
> h2. Impact
> Defensive only in normal use: callers inherit the base {{DEFAULT_MAX_SIZE}}
> (16 MB), so {{limit}} is not normally {{nil}}. But as a shared base method it
> should degrade cleanly rather than throw a bare interpreter error.
> h2. Suggested fix
> Treat a {{nil}} {{limit}} as "no explicit maximum" (fall back to
> {{DEFAULT_MAX_SIZE}}, or skip only the upper-bound comparison while keeping
> the negative-size check), so the method always raises {{TTransportException}}.
> _Drafted with AI assistance (Claude Opus 4.8); reviewed and filed by Jens
> Geyer._
--
This message was sent by Atlassian Jira
(v8.20.10#820010)