Superb quality and spec AB-Com PULSe 4K SE. Crazy offer! Only £99! FREE UK DELIVERY! 4K UHD, Enigma 2, Multiboot 4 images & more!...
Superb quality and spec AB-Com PULSe 4K Rev II Twin Satellite tuner only £149! FREE UK DELIVERY! 4K UHD, Enigma 2, SATA HDD facility, Multiboot 4 images & more!...

[ViX_Misc] InfoBarGenerics.py, long blue button causing box to crash

I've said before that I haven't a clue what I'm talking about, and as there've been no replies, I'll continue to prove it.

The fnc commit from 23 days ago is in the python3 branch. https://github.com/OpenViX/enigma2/commit/c1daa54447d2d6cb23d9383706ed511356d29e35

I can't find it in the Dev-python3-compatible branch, lib/python/Plugins/Plugin.py is 11 month old.

The blue button crash in 6.0.009.001 (Dev) is fixed if I re-add the fnc commit from the python3 branch. I'd have thought it should already be in ??????

Code:
root@vuultimo4k:~# ls -l /usr/lib/enigma2/python/Plugins
drwxr-xr-x   13 root     root          4096 Mar  7 10:58 Extensions
-rw-r--r--    1 root     root          4570 Mar  7 11:31 Plugin.py
-rw-r--r--    1 root     root          3435 Mar  7 11:32 Plugin.pyc
-rw-r--r--    1 root     root          3492 Feb 28 23:43 Plugin.pyc.orig
drwxr-xr-x   22 root     root          4096 Mar  7 10:58 SystemPlugins
-rw-r--r--    1 root     root           134 Feb 28 23:43 __init__.pyc
root@vuultimo4k:~#

InfoBarGenerics.py is dependant on Plugin.pyc existing when recompiling. Not sure if that might be significant, as changing them both at the same time doesn't work.

The yellow button crash still needs name initialising at some point in the code.
I have no idea what code you are using in InfoBarGenerics, post the code you are using in def showEPGSearch(self):.
 

OK try this :
Code:
	def showEPGSearch(self):
		try:
			from Plugins.Extensions.EPGSearch.EPGSearch import EPGSearch
		except ImportError:
			self.session.open(MessageBox, _("The EPGSearch plugin is not installed!\nPlease install it."), type=MessageBox.TYPE_INFO, timeout=10, simple=True)
			return
		s = self.session.nav.getCurrentService()
		if s:
			name = ""
			info = s.info()
			event = info.getEvent(0) # 0 = now, 1 = next
			if event:
				name = event and event.getEventName() or ''
			if self.session.nav.getCurrentlyPlayingServiceOrGroup() is not None:
				name = self.session.nav.getCurrentlyPlayingServiceOrGroup().toString()
				name = name.split('/')
				name = name[-1]
				name = name.replace('.', ' ')
				name = name.split('-')
				name = name[0]
				if name.endswith(' '):
					name = name[:-1]
			if name:
				self.session.open(EPGSearch, name, False)
			else:
				self.session.open(EPGSearch)
		else:
			self.session.open(EPGSearch)
 
Yes, that sorts it, blue and yellow both ok when I've added the fnc commit from 23 days ago.

Any ideas why it's not already in ?
 
Last edited:
Yes, that sorts it, blue and yellow both ok when I've added the fnc commit from 23 days ago.

Any ideas why it's not already in ?
Thanks for testing.
The fnc change, depend on exactly which version you are on and when teh build ran. The issue often is that these builds take yonks and may or may not catch some changes..
 
Thanks for testing.
The fnc change, depend on exactly which version you are on and when teh build ran. The issue often is that these builds take yonks and may or may not catch some changes..

6.0.009.001 (Dev), around 7 days old, nearly 2 weeks after the commit.

Developer releases never appear in the python3 branch, just merges, which doesn't help.
 
6.0.009.001 (Dev), around 7 days old, nearly 2 weeks after the commit.

Developer releases never appear in the python3 branch, just merges, which doesn't help.

It is not there because Dev is not built from python3 branch.
 
It is not there because Dev is not built from python3 branch.

The python3 branch is way ahead of dev-python3-compatible in terms of commits, when do they finally get included (and in which image(s)) ?
 
Thanks for testing.
The fnc change, depend on exactly which version you are on and when teh build ran. The issue often is that these builds take yonks and may or may not catch some changes..

The latest commit from earlier this afternoon https://github.com/OpenViX/enigma2/commit/1cefe7ba217d89b44c8f98b01141218bef882bcc , is ok with no tuners, but yellow button epg search now finds nothing when successfully tuned to a channel.

The earlier commit was ok when tuners were available. https://github.com/OpenViX/enigma2/commit/ee739a16db236a325e41950387e2a2252cada599
 
so use this code with debug and post debug when with tuner and without tuner(how are you doing that??)

Code:
	def showEPGSearch(self):
		try:
			from Plugins.Extensions.EPGSearch.EPGSearch import EPGSearch
		except ImportError:
			self.session.open(MessageBox, _("The EPGSearch plugin is not installed!\nPlease install it."), type=MessageBox.TYPE_INFO, timeout=10, simple=True)
			return
		s = self.session.nav.getCurrentService()
		if s:
			name = ""
			info = s.info()
			event = info.getEvent(0) # 0 = now, 1 = next
			if event:
				name = event and event.getEventName() or ''
			if self.session.nav.getCurrentlyPlayingServiceOrGroup() is not None:
				name = self.session.nav.getCurrentlyPlayingServiceOrGroup().toString()
				name = name.split('/')
				name = name[-1]
				name = name.replace('.', ' ')
				name = name.split('-')
				name = name[0]
				if name.endswith(' '):
					name = name[:-1]
			print("[InfoBarGenerics][showEPGSearch] event, name, CurrentlyPlayingServiceOrGroup", event, name, self.session.nav.getCurrentlyPlayingServiceOrGroup())		
			if name:
				self.session.open(EPGSearch, name, False)
			else:
				self.session.open(EPGSearch)
		else:
			self.session.open(EPGSearch)
 
Yellow with tuners, search finds nothing...


Code:
16:56:27.2062 [InfoBarGenerics] Key: 400 (Make) KeyID='KEY_YELLOW' Binding='('YELLOW',)'.
16:56:27.6457 [eInputDeviceInit] 0 190 (400) 1
16:56:27.6458 [eRCDeviceInputDev] emit: 0
16:56:27.6474 [InfoBarGenerics] Key: 400 (Break) KeyID='KEY_YELLOW' Binding='('YELLOW',)'.
16:56:27.6477 [ActionMap] Keymap 'InfobarExtensions' -> Action = 'openEPGSearch'.
16:56:27.6481 [InfoBarGenerics][showEPGSearch] event, name, CurrentlyPlayingServiceOrGroup <enigma.eServiceEvent; proxy of <Swig Object of type 'ePtr< eServiceEvent > *' at 0xb0d5ef98> > 1:0:19:4484:4089:233A:EEEE0000:0:0:0: 1:0:19:4484:4089:233A:EEEE0000:0:0:0:
16:56:27.6841 [Skin] Processing screen 'EPGSearch' from list 'EPGSearch, EPGSelection', position=(0, 0), size=(1920 x 1080) for module 'EPGSearch'.
16:56:27.6966 [Screen] Warning: Skin is missing element 'number' in <class 'Plugins.Extensions.EPGSearch.EPGSearch.EPGSearch'>.
16:56:27.6977 [Skin] Attribute 'setEventItemFont' (with value of 'Regular;32') in object of type 'eListbox' is not implemented!
16:56:27.6978 [Skin] Attribute 'setEventTimeFont' (with value of 'Regular;32') in object of type 'eListbox' is not implemented!
16:56:27.6979 [Skin] Attribute 'setColWidths' (with value of '120,220') in object of type 'eListbox' is not implemented!
16:56:27.6980 [Skin] Attribute 'setColGap' (with value of '40') in object of type 'eListbox' is not implemented!
16:56:27.6980 [Skin] Attribute 'setIconDistance' (with value of '-5') in object of type 'eListbox' is not implemented!
16:56:27.6981 [Skin] Attribute 'setPiconSize' (with value of '50,30') in object of type 'eListbox' is not implemented!
16:56:27.6981 [Skin] Attribute 'setPiconDistance' (with value of '0') in object of type 'eListbox' is not implemented!
16:56:27.6982 [Skin] Attribute 'setPboxDistance' (with value of '80') in object of type 'eListbox' is not implemented!
16:56:27.7060 [Skin] Processing screen 'SimpleSummary' from list 'EPGSearchSummary, EPGSelectionSummary, ScreenSummary, EPGSearch_summary, EPGSelection_summary, SimpleSummary', position=(0, 0), size=(800 x 480) for module 'ScreenSummary'.
16:56:27.7881 [eEPGCache] lookup events with '1:0:19:4484:4089:233A:EEEE0000:0:0:0:' in title (ignore case)
16:56:32.9709 [eInputDeviceInit] 1 ae (174) 1
16:56:32.9710 [eRCDeviceInputDev] emit: 1
16:56:32.9728 [InfoBarGenerics] Key: 174 (Make) KeyID='KEY_EXIT' Binding='('EXIT',)'.
16:56:33.3067 [eInputDeviceInit] 0 ae (174) 1
16:56:33.3068 [eRCDeviceInputDev] emit: 0
16:56:33.3085 [InfoBarGenerics] Key: 174 (Break) KeyID='KEY_EXIT' Binding='('EXIT',)'.
16:56:33.3087 [ActionMap] Keymap 'OkCancelActions' -> Action = 'cancel'.
16:56:34.8759 [eEPGChannelData] schedule finished(1646672194)
 
Yellow without tuners (I just disable them all, it's equivalent to no tuner available when they're all in use, that's how I used to do it)....

Code:
17:00:39.5393 [InfoBarGenerics] Key: 400 (Break) KeyID='KEY_YELLOW' Binding='('YELLOW',)'.
17:00:39.5396 [ActionMap] Keymap 'InfobarExtensions' -> Action = 'openEPGSearch'.
17:00:39.5398 [InfoBarGenerics][showEPGSearch] event, name, CurrentlyPlayingServiceOrGroup None  None
17:00:39.5728 [Skin] Processing screen 'EPGSearch' from list 'EPGSearch, EPGSelection', position=(0, 0), size=(1920 x 1080) for module 'EPGSearch'.
17:00:39.5851 [Screen] Warning: Skin is missing element 'number' in <class 'Plugins.Extensions.EPGSearch.EPGSearch.EPGSearch'>.
17:00:39.5862 [Skin] Attribute 'setEventItemFont' (with value of 'Regular;32') in object of type 'eListbox' is not implemented!
17:00:39.5863 [Skin] Attribute 'setEventTimeFont' (with value of 'Regular;32') in object of type 'eListbox' is not implemented!
17:00:39.5864 [Skin] Attribute 'setColWidths' (with value of '120,220') in object of type 'eListbox' is not implemented!
17:00:39.5864 [Skin] Attribute 'setColGap' (with value of '40') in object of type 'eListbox' is not implemented!
17:00:39.5865 [Skin] Attribute 'setIconDistance' (with value of '-5') in object of type 'eListbox' is not implemented!
17:00:39.5865 [Skin] Attribute 'setPiconSize' (with value of '50,30') in object of type 'eListbox' is not implemented!
17:00:39.5866 [Skin] Attribute 'setPiconDistance' (with value of '0') in object of type 'eListbox' is not implemented!
17:00:39.5867 [Skin] Attribute 'setPboxDistance' (with value of '80') in object of type 'eListbox' is not implemented!
17:00:39.5943 [Skin] Processing screen 'SimpleSummary' from list 'EPGSearchSummary, EPGSelectionSummary, ScreenSummary, EPGSearch_summary, EPGSelection_summary, SimpleSummary', position=(0, 0), size=(800 x 480) for module 'ScreenSummary'.
17:00:44.3302 [eInputDeviceInit] 1 ae (174) 1
17:00:44.3302 [eRCDeviceInputDev] emit: 1
17:00:44.3320 [InfoBarGenerics] Key: 174 (Make) KeyID='KEY_EXIT' Binding='('EXIT',)'.
17:00:44.6657 [eInputDeviceInit] 0 ae (174) 1
17:00:44.6658 [eRCDeviceInputDev] emit: 0
17:00:44.6672 [InfoBarGenerics] Key: 174 (Break) KeyID='KEY_EXIT' Binding='('EXIT',)'.

NB Post #43 works for all cases.
 
Last edited:
so this works? I thought on following posts it didn't


Code:
 		try:
			from Plugins.Extensions.EPGSearch.EPGSearch import EPGSearch
		except ImportError:
			self.session.open(MessageBox, _("The EPGSearch plugin is not installed!\nPlease install it."), type=MessageBox.TYPE_INFO, timeout=10, simple=True)
			return
		s = self.session.nav.getCurrentService()
		if s:
			name = ""
			info = s.info()
			event = info.getEvent(0) # 0 = now, 1 = next
			if event:
				name = event and event.getEventName() or ''
			if self.session.nav.getCurrentlyPlayingServiceOrGroup() is not None:
				name = self.session.nav.getCurrentlyPlayingServiceOrGroup().toString()
				name = name.split('/')
				name = name[-1]
				name = name.replace('.', ' ')
				name = name.split('-')
				name = name[0]
				if name.endswith(' '):
					name = name[:-1]
			if name:
				self.session.open(EPGSearch, name, False)
			else:
				self.session.open(EPGSearch)
		else:
			self.session.open(EPGSearch)
 
Post #43 worked in all cases (not quite, see post #56), I've tried it twice since then and still ok, but that last commit doesn't work, yellow finds nothing when tuned in to channel.
 
Last edited:
Post #43 worked in all cases, I've tried it twice since then and still ok, but that last commit doesn't work, yellow finds nothing when tuned in to channel.

OK so stick with code now in post #53 - OK?
 
I see what's happened, I added name = "" to yesterday's commit as that was all that was needed to prevent the crash, post #43 had other changes which I hadn't noticed.

So yesterday's commit with the extra line above works in all cases.

Sorry.
 
Last edited:
The python3 branch is way ahead of dev-python3-compatible in terms of commits, when do they finally get included (and in which image(s)) ?

enigma branch "python3" goes with oe-alliance-core branch "5.1"... so when the release image moves to 5.1, i.e. ViX 6.1.

I uploaded a version of this (6.1) image a while back. Most recent version is on the beta ftp server now.
 
I see what's happened, I added name = "" to yesterday's commit as that was all that was needed to prevent the crash, post #43 had other changes which I hadn't noticed.

So yesterday's commit with the extra line above works in all cases.

Sorry.

This needs clarifying now 2 days have gone by.

Sunday 6th, https://github.com/OpenViX/enigma2/commit/ee739a16db236a325e41950387e2a2252cada599 works if the line name = "" is added.

Monday 7th's (the latest commit) https://github.com/OpenViX/enigma2/commit/1cefe7ba217d89b44c8f98b01141218bef882bcc doesn't work. name = "" has been added but other changes were made.

Doesn't work == yellow search finds nothing on a tuned channel y.webp
 
This needs clarifying now 2 days have gone by.

Sunday 6th, https://github.com/OpenViX/enigma2/commit/ee739a16db236a325e41950387e2a2252cada599 works if the line name = "" is added.

Monday 7th's (the latest commit) https://github.com/OpenViX/enigma2/commit/1cefe7ba217d89b44c8f98b01141218bef882bcc doesn't work. name = "" has been added but other changes were made.

Doesn't work == yellow search finds nothing on a tuned channel View attachment 63459

so does this work for you:
Code:
	def showEPGSearch(self):
		try:
			from Plugins.Extensions.EPGSearch.EPGSearch import EPGSearch
		except ImportError:
			self.session.open(MessageBox, _("The EPGSearch plugin is not installed!\nPlease install it."), type=MessageBox.TYPE_INFO, timeout=10, simple=True)
			return
		s = self.session.nav.getCurrentService()
		if s:
			name = ""
			info = s.info()
			event = info.getEvent(0) # 0 = now, 1 = next
			if event:
				name = event and event.getEventName() or ''
			elif self.session.nav.getCurrentlyPlayingServiceOrGroup() is None:
				self.session.open(EPGSearch)
				return				
			else:
				name = self.session.nav.getCurrentlyPlayingServiceOrGroup().toString()
				name = name.split('/')
				name = name[-1]
				name = name.replace('.', ' ')
				name = name.split('-')
				name = name[0]
				if name.endswith(' '):
					name = name[:-1]
			if name:
				self.session.open(EPGSearch, name, False)
			else:
				self.session.open(EPGSearch)
		else:
			self.session.open(EPGSearch)
 
.... yes, all combinations work ok.

I see there's a return added as well, compared to previous iterations. (nb. There are 3 or 4 tabs at the end of return.)
 
Last edited:

OpenViX Feeds Status

Back
Top