Page MenuHomePhabricator

Links to [[.ar]] etc. inside a transclusion throw an error from ve.ce.MWTransclusionNode:178 as the href makes mw.Title break
Closed, ResolvedPublic1 Story Points

Description

Description VisualEditor will not load completely
Intention: Tried to edit Aruba using ve but will not load completely
Steps to Reproduce: Edit any of the articles at https://en.wikipedia.org/wiki/Special:WhatLinksHere/Template:Infobox_country (majority of the articles)
Results: VisualEditor hangs and will not load completely
Page where the issue occurs Most [but not all] articles that transclude Template:Infobox country
Web browser Firefox 38.0
Operating system Ubunto 14.4 LTS
Skin Vector
Notes: Other articles that transclude Template:Infobox country like Juan de Nova Island will load just fine
I tried it logged in (En Wikipedia and Ilo Wikipedia) and logged out (Ilo Wikipedia, Tl Wikipedia)


Reported at https://en.wikipedia.org/wiki/Wikipedia:VisualEditor/Feedback#VisualEditor_will_not_load_completely (permalink)

Confirmed on https://en.wikipedia.org/wiki/Jordan?veaction=edit (also using Firefox 38 and in Chromium 37, Ubuntu)

Event Timeline

Quiddity created this task.Jun 30 2015, 7:32 PM
Quiddity raised the priority of this task from to Needs Triage.
Quiddity updated the task description. (Show Details)
Quiddity added a project: VisualEditor.
Quiddity added a subscriber: Quiddity.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJun 30 2015, 7:32 PM

Oh, I meant to add webconsole:

titles:[titles];state=state===undefined?true:!!state;var i,pages=this.pages,len=titles.length;for(i=0;i<len;i++){pages[titles[i]]=state;}return true;}};Title.prototype={constructor:Title,getNamespaceId:function(){return this.namespace;},getNamespacePrefix:function(){return this.namespace===NS_MAIN?'':(mw.config.get('wgFormattedNamespaces')[this.namespace].replace(/ /g,'_')+':');},getName:function(){if($.inArray(this.namespace,mw.config.get('wgCaseSensitiveNamespaces'))!==-1){return this.title;}return this.title[0].toUpperCase()+this.title.slice(1);},getNameText:function(){return text(this.getName());},getExtension:function(){return this.ext;},getDotExtension:function(){return this.ext===null?'':'.'+this.ext;},getMain:function(){return this.getName()+this.getDotExtension();},getMainText:function(){return text(this.getMain());},getPrefixedDb:function(){return this.getNamespacePrefix()+this.getMain();},getPrefixedText:function(){return text(this.getPrefixedDb());},getRelativeText:function
Quiddity updated the task description. (Show Details)Jul 1 2015, 5:36 AM
Quiddity set Security to None.
Quiddity updated the task description. (Show Details)
TheDJ added a subscriber: TheDJ.Jul 1 2015, 9:33 AM

undefined is not an object (evaluating 'this.title[0].toUpperCase')

This sounds like a bug in a replacement of ucFirst ????

Jdforrester-WMF renamed this task from VisualEditor will not load completely - TypeError: this.title[0] is undefined - at some articles with {{infobox country}} on enwiki to Links to [[.ar]] etc. inside a transclusion throw an error from ve.ce.MWTransclusionNode:178 as the href makes mw.Title break.Jul 1 2015, 3:28 PM
Jdforrester-WMF triaged this task as High priority.

Change 222132 had a related patch set uploaded (by Alex Monk):
mw.Title: Handle empty this.title

https://gerrit.wikimedia.org/r/222132

Krenair claimed this task.Jul 1 2015, 3:51 PM

Change 222132 merged by jenkins-bot:
mw.Title: Handle empty this.title

https://gerrit.wikimedia.org/r/222132

Krenair closed this task as Resolved.Jul 1 2015, 7:30 PM

That should fix this in theory. Please reopen if the patch gets deployed to your wiki but does not actually fix the issue.

Change 222743 had a related patch set uploaded (by Krinkle):
mw.Title: Handle empty this.title

https://gerrit.wikimedia.org/r/222743

Krinkle added a subscriber: Krinkle.Jul 4 2015, 8:21 AM

Backporting since this means loading https://en.wikipedia.org/w/index.php?title=Tokelau&veaction=edit causes a fatal crash – due to the link to [[.tk]] – resulting in an incomplete progress bar and no communication to the user.

Maybe we should try/catch a thing or two during initialisation so that not every exception results in this indefinite loading state where the user is clueless.

Change 222743 merged by jenkins-bot:
mw.Title: Handle empty this.title

https://gerrit.wikimedia.org/r/222743