Skip to content

BigInt #51

Description

@clarghi

Hi,
I use the version 2.5.0 (I'll update, but I don't now when actually).

This plugin fails if more than 32-33 (I don't remember exactly) items flaggables, because the javascript bitwise OR truncate:
see documentation.

I have created a flaggable enum using the BigInt object, and the plugin crash only in one method:

if(!(e.value!==0&&!(e.value&e.value-1))) { return false; }

Fails because cannot use the minus operator between Number and BigInt.

I have tested using typeof and resolved. When I will update to latest version, if this problem will be present yet I'll create a PL.

Solution:

if((typeof e.value==="number")&&(!(e.value !== 0 && !(e.value & e.value - 1)))) { return false; } else if((typeof e.value==="bigint")&&(!(e.value!==0&&!(e.value&e.value-BigInt(1))))) { return false; }

B.r.
Cristiano Larghi

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions