examples/snippets: fix error in case .pyc files of snippets are present. Fixes #35
The code assumed that module.__file__ points to the source, but it points to the .pyc file in case it exists. Use inspect.getsource() instead.
This commit is contained in:
parent
7f052bd8d9
commit
4ddad64956
|
@ -1,4 +1,5 @@
|
|||
import os
|
||||
import inspect
|
||||
import importlib
|
||||
|
||||
|
||||
|
@ -30,7 +31,9 @@ def get_snippets():
|
|||
s.name = name
|
||||
mod = importlib.import_module("." + name, __package__)
|
||||
s.draw_func = getattr(mod, "draw")
|
||||
with open(mod.__file__, "rb") as h:
|
||||
s.code = h.read().decode("utf-8")
|
||||
code = inspect.getsource(mod)
|
||||
if isinstance(code, bytes):
|
||||
code = code.decode("utf-8")
|
||||
s.code = code
|
||||
snippets[s.name] = s
|
||||
return snippets
|
||||
|
|
Loading…
Reference in New Issue