(resend) [PATCH 1/2] ntdll: add stub implementation for ProcessQuotaLimits

Zhiyi Zhang zzhang at codeweavers.com
Fri Mar 20 08:08:42 CDT 2020


>          break;
> +    case ProcessQuotaLimits:
> +        {
> +            QUOTA_LIMITS qlimits;
> +
> +            if (ProcessInformationLength >= sizeof(QUOTA_LIMITS))
> +            {
> +                if (!ProcessInformation)
> +                    ret = STATUS_ACCESS_VIOLATION;
> +                else if (!ProcessHandle)
> +                    ret = STATUS_INVALID_HANDLE;
> +                else
> +                {
> +
Please remove this empty line.
> +                    qlimits.PagedPoolLimit = (SIZE_T)-1;
> +                    qlimits.NonPagedPoolLimit = (SIZE_T)-1;
> +                    /* Default minimum working set size is 204800 bytes (50 Pages) */
> +                    qlimits.MinimumWorkingSetSize = 204800;
> +                    /* Default maximum working set size is 1413120 bytes (345 Pages) */
> +                    qlimits.MaximumWorkingSetSize = 1413120;
> +                    qlimits.PagefileLimit = (SIZE_T)-1;
> +                    qlimits.TimeLimit.QuadPart = -1;
Please test against these hard-coded values. And add a FIXME here because they should be queried from process and SetProcessWorkingSetSize() can change them.
> +                    memcpy(ProcessInformation, &qlimits, sizeof(QUOTA_LIMITS));
Please use sizeof(qlimits) instead.
> +
> +                    len = sizeof(QUOTA_LIMITS);
> +                }
> +
> +                if (ProcessInformationLength > sizeof(QUOTA_LIMITS))
> +                    ret = STATUS_INFO_LENGTH_MISMATCH;
You should check ProcessInformationLength == sizeof(QUOTA_LIMITS) and remove this. You didn't
correctly test the required size. You should test size of sizeof(QUOTA_LIMITS)-/+1
> +            }
> +            else
> +            {
> +                len = sizeof(QUOTA_LIMITS);
> +                ret = STATUS_INFO_LENGTH_MISMATCH;
> +            }
> +        }
> +        break;
>      case ProcessIoCounters:
>          {
>              IO_COUNTERS pii;

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20200320/5710acb6/attachment.htm>


More information about the wine-devel mailing list