Суть проблемы в шапке, вот сам тестовый скрипт:
По какой-то причине call DestroyGroup не работет :С, за пару секунд натекает 20 handl'ов соответственно:
Версия игры 1.27
Для измерения утечек использовал этот скрипт: xgm.guru/p/wc3/206488
Кто сталкивался? Помогите пожалуйста, добрые люди

Ваш код раскрывается в
function GetUnitsInRectMatching takes rect r, boolexpr filter returns group
    local group g = CreateGroup()
    call GroupEnumUnitsInRect(g, r, filter)
    call DestroyBoolExpr(filter)
    return g
endfunction
Вот эта группа и течёт.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
16
На GUI утечки не пофиксить, всё-равно придётся писать на джасс. Ну вот реализация на GUI через Custom script.
Загруженные файлы
27
Vlod, либо обнуляйте до return (полезно использовать когда boolean (например узнать пуста ли группа) или число (как пример узнать кол-во юнитов в группе).
  1. используешь группу (объявляем локи создаем пикаем)
  2. записываешь временные локалки например число юнитов в группе set c = ... (циклом перечитываешь)
  3. удаляешь группу DestroyGroup(g), локи обнуляешь set g = null,
  4. возвращаешь
boolean: return c>0 или FirstOfGroup(g) == null (если g это аргумент функции, обнулять ниче не надо тогда. можно тогда отдельную обертку написать и boolean локалку завернуть)
или integer: return c)
или как в этом случае вместо локалки используйте темповые глобалки
26
bifurcated, ты удалил всех юнитов из группы по одному, зачем предпоследним действием удаляешь всех юнитов из пустой группы?
16
8gabriel8, Если сделать проверку на udg_TempGroup == null, то она не пройдёт, если таких проверок не делаешь, то и незачем это писать.
28
А как обнулять, если мы её возвращаем?
Через глобалку.

зачем предпоследним действием удаляешь всех юнитов из пустой группы?
Он также присваивает переменной юнита, которая уже null, ещё раз null.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.