Fix BaseMeta with six >= 1.4.0

A change in six broke this code; sometimes there is no bases at all.

Change-Id: I7b86f6e4aac61cfd313e42bc26b5e6b27e4e9555
This commit is contained in:
Julien Danjou 2013-09-02 11:18:40 +02:00
parent d18d0534e1
commit 8b73a963c3

View File

@ -573,12 +573,12 @@ def register_type(class_):
class BaseMeta(type):
def __new__(cls, name, bases, dct):
if bases[0] is not object and '__registry__' not in dct:
if bases and bases[0] is not object and '__registry__' not in dct:
dct['__registry__'] = registry
return type.__new__(cls, name, bases, dct)
def __init__(cls, name, bases, dct):
if bases[0] is not object:
if bases and bases[0] is not object:
cls.__registry__.register(cls)