Summary: The fiber command can now be run on a value of type folly::fibers::Fiber or a value of type folly::fibers::Fiber*
Reviewed By: andriigrynenko
Differential Revision:
D5393491
fbshipit-source-id:
1f48e08288f75c59852c939062db616eb06cea73
-def fiber_activate(fiber_ptr):
+def fiber_activate(fiber):
fiber_type = gdb.lookup_type("folly::fibers::Fiber")
fiber_type = gdb.lookup_type("folly::fibers::Fiber")
- fiber = fiber_ptr.cast(fiber_type.pointer()).dereference()
+ if fiber.type != fiber_type:
+ fiber = fiber.cast(fiber_type.pointer()).dereference()
if not FiberPrinter(fiber).backtrace_available():
return "Can not activate a non-waiting fiber."
FiberUnwinder.set_fiber(fiber)
if not FiberPrinter(fiber).backtrace_available():
return "Can not activate a non-waiting fiber."
FiberUnwinder.set_fiber(fiber)
- return "Fiber " + str(fiber_ptr) + " activated. You can call 'bt' now."
+ return "Fiber 0x{:12x} activated. You can call 'bt' now.".format(int(fiber.address))