[Butia-devel-list] The layer problem
Alan Jhonn Aguiar Schwyn
alanjas en hotmail.com
Mar Mar 20 18:51:02 UYT 2012
I make some test..
I make a for to get the complete list of sprites..
def set_layer(self, layer=None): ''' Set the layer for a sprite ''' self._sprites.remove_from_list(self) if layer is not None: self.layer = layer
# print all sprites list print 'list:' for i in range(self._sprites.length_of_list()): a = self._sprites.get_sprite(i) print 'sprite', a
for i in range(self._sprites.length_of_list()): a = self._sprites.get_sprite(i) if layer < a.layer: self._sprites.insert_in_list(self, i) self.inval() return self._sprites.append_to_list(self) self.inval()
With this, I corroborate that in a few cases, the list have None sprites:
list:sprite <TurtleArt.sprites.Sprite instance at 0x91d586c>sprite <TurtleArt.sprites.Sprite instance at 0x98d4fec>sprite <TurtleArt.sprites.Sprite instance at 0x98d8a2c>sprite <TurtleArt.sprites.Sprite instance at 0x98d8ccc>sprite <TurtleArt.sprites.Sprite instance at 0x98da14c>sprite <TurtleArt.sprites.Sprite instance at 0x98da54c>sprite <TurtleArt.sprites.Sprite instance at 0x98da9ec>sprite <TurtleArt.sprites.Sprite instance at 0x98dadac>sprite <TurtleArt.sprites.Sprite instance at 0x98de22c>sprite <TurtleArt.sprites.Sprite instance at 0x98de5ec>sprite <TurtleArt.sprites.Sprite instance at 0x98de9ec>sprite <TurtleArt.sprites.Sprite instance at 0x98dee2c>sprite <TurtleArt.sprites.Sprite instance at 0x9d2e2ac>sprite <TurtleArt.sprites.Sprite instance at 0x9d2e66c>sprite <TurtleArt.sprites.Sprite instance at 0x9d2ea2c>sprite <TurtleArt.sprites.Sprite instance at 0x9d2ee2c>sprite <TurtleArt.sprites.Sprite instance at 0x9d3228c>sprite <TurtleArt.sprites.Sprite instance at 0x9d326ec>sprite <TurtleArt.sprites.Sprite instance at 0x9d32aac>sprite <TurtleArt.sprites.Sprite instance at 0xa0d5d4c>sprite <TurtleArt.sprites.Sprite instance at 0x98cc1ec>sprite <TurtleArt.sprites.Sprite instance at 0x98cc52c>sprite <TurtleArt.sprites.Sprite instance at 0xa0d274c>sprite <TurtleArt.sprites.Sprite instance at 0xa0d2acc>sprite <TurtleArt.sprites.Sprite instance at 0xa0d2e6c>sprite <TurtleArt.sprites.Sprite instance at 0xa0d524c>sprite <TurtleArt.sprites.Sprite instance at 0xa0d562c>sprite <TurtleArt.sprites.Sprite instance at 0xa0d5a8c>sprite <TurtleArt.sprites.Sprite instance at 0xa0cf0ac>sprite <TurtleArt.sprites.Sprite instance at 0xa0cf46c>sprite <TurtleArt.sprites.Sprite instance at 0xa0cf82c>sprite <TurtleArt.sprites.Sprite instance at 0xa0cfbec>sprite <TurtleArt.sprites.Sprite instance at 0xa0d52ac>sprite <TurtleArt.sprites.Sprite instance at 0x9d5542c>sprite <TurtleArt.sprites.Sprite instance at 0x9d5578c>sprite <TurtleArt.sprites.Sprite instance at 0x9d55b2c>sprite <TurtleArt.sprites.Sprite instance at 0x9d55f8c>sprite <TurtleArt.sprites.Sprite instance at 0x9d583ac>sprite <TurtleArt.sprites.Sprite instance at 0x9d587ec>sprite <TurtleArt.sprites.Sprite instance at 0x9d58bcc>sprite <TurtleArt.sprites.Sprite instance at 0x9d58fcc>sprite <TurtleArt.sprites.Sprite instance at 0x9d5b44c>sprite <TurtleArt.sprites.Sprite instance at 0x9d5b84c>sprite <TurtleArt.sprites.Sprite instance at 0x9d5bcac>sprite Nonesprite Nonesprite Nonesprite Nonesprite Nonelist:sprite <TurtleArt.sprites.Sprite instance at 0x91d586c>....
Attach the part of the logs...
For solve the problem, attach a patch that only check for the None sprites..
The question is: why are None sprites in that list?
Who insert the sprites in the list?
Regards!
Alan
> Date: Tue, 20 Mar 2012 07:11:50 -0400
> Subject: Re: The layer problem
> From: walter.bender en gmail.com
> To: alanjas en hotmail.com
> CC: butia-devel-l en fing.edu.uy
>
> On Mon, Mar 19, 2012 at 11:27 PM, Alan Jhonn Aguiar Schwyn
> <alanjas en hotmail.com> wrote:
> >
> > Hi,
> >
> > This problem.. you can reproduce it?
>
> I'll try again.
>
> -walter
>
> >
> > Traceback (most recent call last):
> > File "/usr/lib/python2.7/threading.py", line 530, in __bootstrap_inner
> > self.run()
> > File "/usr/lib/python2.7/threading.py", line 734, in run
> > self.function(*self.args, **self.kwargs)
> > File "/home/olpc/Activities/TurtleBots.activity/plugins/butia/butia.py",
> > line 674, in bobot_poll
> > self.check_for_device_change()
> > File "/home/olpc/Activities/TurtleBots.activity/plugins/butia/butia.py",
> > line 482, in check_for_device_change
> > self.change_butia_palette_colors()
> > File "/home/olpc/Activities/TurtleBots.activity/plugins/butia/butia.py",
> > line 462, in change_butia_palette_colors
> > self.tw.show_toolbar_palette(palette_name_to_index('butia'),
> > regenerate=True, show=False)
> > File "/home/olpc/Activities/TurtleBots.activity/TurtleArt/tawindow.py",
> > line 753, in show_toolbar_palette
> > self._create_proto_blocks(n)
> > File "/home/olpc/Activities/TurtleBots.activity/TurtleArt/tawindow.py",
> > line 874, in _create_proto_blocks
> > self.palettes[n][-1].spr.set_layer(PROTO_LAYER)
> > File "/home/olpc/Activities/TurtleBots.activity/TurtleArt/sprites.py",
> > line 258, in set_layer
> > if layer < self._sprites.get_sprite(i).layer:
> > AttributeError: 'NoneType' object has no attribute 'layer'
> >
> > I have it in new sugar (0.94.1).. in the old LATU's image (0.88.1) no...
> >
> > The latest build.. http://www.fing.edu.uy/~aaguiar/files/TurtleBots-7.xo
> >
> > Regards!
> >
> > Alan
>
>
>
> --
> Walter Bender
> Sugar Labs
> http://www.sugarlabs.org
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://www.fing.edu.uy/mailman/private/butia-devel-l/attachments/20120320/0fd06e82/attachment.html"
------------ próxima parte ------------
Se ha borrado un mensaje que no está en formato texto plano...
Nombre : 0001-validate-None-sprite-in-set_sprite.patch
Tipo : text/x-patch
Tamaño : 1092 bytes
Descripción: no disponible
Url : https://www.fing.edu.uy/mailman/private/butia-devel-l/attachments/20120320/0fd06e82/attachment.bin
------------ próxima parte ------------
Se ha borrado un mensaje que no está en formato texto plano...
Nombre : org.laptop.TurtleArtButia-9.log
Tipo : text/x-log
Tamaño : 50039 bytes
Descripción: no disponible
Url : https://www.fing.edu.uy/mailman/private/butia-devel-l/attachments/20120320/0fd06e82/attachment-0001.bin
Más información sobre la lista de distribución Butia-devel-l