Skip to content

SQF code is wrong #6

@X39

Description

@X39

Should be

params ["_method", "_args"];
private _result = "";
private _longResult = nil;
// do a call for an extra variable scope
0 call {
    ("extFileIO" callExtension [_method, _args]) params ["_resultData", "_returnCode", "_errorCode"];
    if (_errorCode != 0) then { throw _errorCode; };
    switch _returnCode do {
        case -1: { _result = (parseSimpleArray ("[" + _resultData + "]")) select 0; throw _result; };
        case 0: { _result = (parseSimpleArray ("[" + _resultData + "]")) select 0; };
        case 1: { _longResult = (parseSimpleArray ("[" + _resultData + "]") select 0; };
    };
};
// while in long result, keep polling
while { !isNil "_longResult" } do
{
    ("extFileIO" callExtension ["?", _longResult]) params ["_resultData", "_returnCode", "_errorCode"];
    if (_errorCode != 0) then { throw _errorCode; };
    switch _returnCode do {
        case -1: { _result = (parseSimpleArray ("[" + _result + _resultData + "]")) select 0; throw _result; };
        case 0: { _result = (parseSimpleArray ("[" + _result + _resultData + "]")) select 0; _longResult = nil; };
        case 1: { _result = _result + _resultData; };
    };
};
_result```

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions