https://bugs.documentfoundation.org/show_bug.cgi?id=151932
--- Comment #2 from [email protected] --- Pseudo code Indentation correction. > import sys > > def find_gallery_item(gallery_name: str, name: str) -> XGalleryItem: > gallery = get_gallery(gallery_name) # XGalleryTheme > num_pics = gallery.getCount() > > result = None > for i in range(num_pics): > item = gallery.getByIndex(i) > # run code to find item. > result = item > break > > # sys.getrefcount() adds a refcount so sys.getrefcount() - 1 > # Reference count for result.Drawing is 0 > print("result.Drawing ref count:", sys.getrefcount(result.Drawing) - 1) > # this means as soon as result is return from this function then > #python garbage collector deletes result.Drawing > > # this next line report as expected. result.Drawing is XDrawing instance > report_gallery_item(result) > return result > > def report_gallery_item(item: XGalleryItem) -> None: > if item is None: > print("Gallery item is null") > return > > url = str(mProps.Props.get(item, "URL")) > print("Gallery item information:") > path = mFileIo.FileIO.uri_to_path(uri_fnm=url, ensure_absolute=False) > print(f' URL: "{url}"') > print(f' Fnm: "{Path(Gallery.gallery_dir, > mFileIo.FileIO.get_fnm(path))}"') > print(f" Path: {path}") > > print(f' Title: "{mProps.Props.get(item, "Title")}"') > item_int_type = int(mProps.Props.get(item, "GalleryItemType")) > print(f" Type: > {cls.get_item_type_str(GalleryItemTypeEnum(item_int_type))}") > > item = find_gallery_item(gallery_name="Shapes", name="Sun") > > report_gallery_item(item) # at this point item.Drawing is None -- You are receiving this mail because: You are the assignee for the bug.
