ID 485146 - Nuke's arg parser is using a too-small and signed int for memory limits

Follow

Problem summary
Nuke's arg parser is using a too-small and signed int for memory limits

Customer reported version
n/a

Customer reported platform
n/a

Steps to reproduce

1) Use the following command to launch Nuke via the terminal:

/usr/local/Nuke13.0v4/Nuke13.0 -t -c 4294967295

2) In the terminal session run nuke.memory("info") and note the output. You should see the following:
'Allocated 95.8KiB, 0% of usage limit of 4GiB, sbrk = 64.8MiB.\nfree_*() calls: 2, new_handler() cleanups: 0.\n\n'

3) Open a new terminal session and run the following command to open a second Nuke session:
/usr/local/Nuke13.0v4/Nuke13.0 -t -c 4294967295

4) Again, run nuke.memory("info") in the Nuke terminal session and note the output:
'Allocated 95.8KiB, -2147483648% of usage limit of 0B, sbrk = 87.2MiB.\nfree_*() calls: 220, new_handler() cleanups: 0.\n\n'

Expected behaviour
The -c size flag should limit the cache memory usage, where size equals a number in bytes.

Actual behaviour
Nuke's arg parser is using a too-small and signed int for memory limits

Workaround
Specifying a unit, when limiting the cache memory usage, should work as expected. For example, the following command should limit the cache memory usage to 4 gigabytes:
/usr/local/Nuke13.0v4/Nuke13.0 -c 4G

Reproduced by support
This bug has been reproduced in:
Nuke 13.0v4 - Linux CentOS 7
Nuke 10.0v1 - Linux CentOS 7

Unable to reproduce bug in:
Nuke 13.0v4 - Windows 10

Earliest version tested
Nuke 10.0v1 - CentOS 7
- This issue appears to be in all versions of the product. The issue had also been identified by our engineering team.

    We're sorry to hear that

    Please tell us why