Calling block_resize on a Libvirt::Domain object leads to a TypeError.
The reason seems to be that ruby-libvirt tries to convert the size
instead of the disk to a string to pass as the disk parameter.
---
ext/libvirt/domain.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ext/libvirt/domain.c b/ext/libvirt/domain.c
index 7812450..aff1842 100644
--- a/ext/libvirt/domain.c
+++ b/ext/libvirt/domain.c
@@ -2882,7 +2882,7 @@ static VALUE libvirt_domain_block_resize(int argc, VALUE *argv,
VALUE d)
ruby_libvirt_generate_call_nil(virDomainBlockResize,
ruby_libvirt_connect_get(d),
ruby_libvirt_domain_get(d),
- StringValueCStr(size), NUM2ULL(size),
+ StringValueCStr(disk), NUM2ULL(size),
ruby_libvirt_value_to_uint(flags));
}
#endif
--
2.7.4