Skin_resize not working properly after bmesh.verts loop - tested with buildbot 12Aug

bpy.ops.transform.skin_resize('INVOKE_DEFAULT') seems to break when looping through bmesh.verts prior.

import bpy
import bmesh

vcount = 0
if bpy.context.mode == 'EDIT_MESH':
    bm = bmesh.from_edit_mesh(bpy.context.active_object.data)
    vcount = len([v.index for v in bm.verts if v.select])
        
if vcount == 1:
    bpy.ops.transform.skin_resize('INVOKE_DEFAULT')
else:
    bpy.ops.transform.resize('INVOKE_DEFAULT')

I just check if only 1 vert is selected => if so, use .skin_resize (related to skin modifier) instead of .resize

The strange part: skin_resize only works correctly when commenting out the vert-loop in line 7.
.skin_resize gets called but has no effect at all after confirming.
Any other operator (resize, translate…) works even with the vert-loop. only .skin_resize seems to be affected.

Could this be a bug or am I simply overlooking something ?

Here is a .blend with the code snippet on the left “BROKEN” and a working one with the bmesh.vert loop commented out “WORKING” on the right.
For convenient testing:

1 Like