Package: git
Version: 1:1.7.4.1-1
Severity: important

I was doing some experiment, trying to create an empty branch with two
submodules, and apply an branch upon them (a git svn conversion
history).

When the rebase is almost done, I've gotten an segfault for git apply
via git-am.

As I've no idea which of my steps could have initiated the fault, I've
gonna include as much information as possible (please see attached
file for history).

The work was based on
`git svn clone
http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/UploadWizard/resources
--no-metadata --no-follow-parent -r 70924:HEAD test`
and what's been done before here is the removal of jquery* directories
and all images except calendar.gif and a prune-empty filter-branch call.


-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.32-5-686 (SMP w/1 CPU core)
Locale: LANG=sv_SE.UTF-8, LC_CTYPE=sv_SE.UTF-8 (charmap=UTF-8) (ignored:
LC_ALL set to sv_SE.UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages git depends on:
ii  git-man                 1:1.7.4.1-1      fast, scalable, distributed
revisi
ii  libc6                   2.11.2-8         Embedded GNU C Library:
Shared lib
ii  libcurl3-gnutls         7.21.2-4         Multi-protocol file
transfer libra
ii  liberror-perl           0.17-1           Perl module for
error/exception ha
ii  libexpat1               2.0.1-7          XML parsing C library -
runtime li
ii  perl-modules            5.10.1-17        Core Perl modules
ii  zlib1g                  1:1.2.3.4.dfsg-3 compression library - runtime

Versions of packages git recommends:
ii  less                          436-1      pager program similar to more
ii  openssh-client [ssh-client]   1:5.5p1-6  secure shell (SSH) client,
for sec
ii  patch                         2.6-2      Apply a diff file to an
original
ii  rsync                         3.0.7-2    fast remote file copy
program (lik

Versions of packages git suggests:
pn  git-arch                     <none>      (no description available)
pn  git-cvs                      <none>      (no description available)
pn  git-daemon-run               <none>      (no description available)
pn  git-doc                      <none>      (no description available)
ii  git-email                    1:1.7.4.1-1 fast, scalable, distributed
revisi
ii  git-gui                      1:1.7.4.1-1 fast, scalable, distributed
revisi
ii  git-svn                      1:1.7.4.1-1 fast, scalable, distributed
revisi
ii  gitk                         1:1.7.4.1-1 fast, scalable, distributed
revisi
ii  gitweb                       1:1.7.4.1-1 fast, scalable, distributed
revisi

-- no debconf information
$ ls
apiTokenMisc.js   combined.min.js       mediawiki.parser2.js  
mw.ApiQueryImageInfo.js   mw.js                    mw.units.js                  
   mw.UploadWizardUtil.js
calendar.gif      DEVELOPERS-README     mw.Api.edit.js        
mw.ApiUploadHandler.js    mw.LanguageUpWiz.js      mw.UploadApiProcessor.js     
   mw.Uri.js
combined.css      dir.combined.css      mw.Api.js             
mw.DestinationChecker.js  mw.Log.js                mw.UploadWizardDeed.js       
   mw.Utilities.js
combined.js       dir.combined.min.css  mw.ApiMisc.js         
mw.GroupProgressBar.js    mw.MockUploadHandler.js  mw.UploadWizard.js           
   mw.UtilitiesTime.js
combined.min.css  language              mw.ApiProxy.js        
mw.IframeTransport.js     mw.Title.js              
mw.UploadWizardLicenseInput.js  uploadWizard.css
$ git symbolic-ref HEAD refs/heads/work
$ rm .git/index
$ git clean -fdx
Removing DEVELOPERS-README
Removing apiTokenMisc.js
Removing calendar.gif
Removing combined.css
Removing combined.js
Removing combined.min.css
Removing combined.min.js
Removing dir.combined.css
Removing dir.combined.min.css
Removing language/
Removing mediawiki.parser2.js
Removing mw.Api.edit.js
Removing mw.Api.js
Removing mw.ApiMisc.js
Removing mw.ApiProxy.js
Removing mw.ApiQueryImageInfo.js
Removing mw.ApiUploadHandler.js
Removing mw.DestinationChecker.js
Removing mw.GroupProgressBar.js
Removing mw.IframeTransport.js
Removing mw.LanguageUpWiz.js
Removing mw.Log.js
Removing mw.MockUploadHandler.js
Removing mw.Title.js
Removing mw.UploadApiProcessor.js
Removing mw.UploadWizard.js
Removing mw.UploadWizardDeed.js
Removing mw.UploadWizardLicenseInput.js
Removing mw.UploadWizardUtil.js
Removing mw.Uri.js
Removing mw.Utilities.js
Removing mw.UtilitiesTime.js
Removing mw.js
Removing mw.units.js
Removing uploadWizard.css

$ ls
$ git submodule add https://github.com/jquery/jquery.git jquery
Cloning into jquery...
remote: Counting objects: 16562, done.
remote: Compressing objects: 100% (5360/5360), done.
remote: Total 16562 (delta 11658), reused 15452 (delta 10664)
Receiving objects: 100% (16562/16562), 12.27 MiB | 808 KiB/s, done.
Resolving deltas: 100% (11658/11658), done.
$ git submodule add https://github.com/jquery/jquery-ui.git jquery.ui
Cloning into jquery.ui...
remote: Counting objects: 27266, done.
remote: Compressing objects: 100% (8506/8506), done.
remote: Total 27266 (delta 19961), reused 25319 (delta 18308)
Receiving objects: 100% (27266/27266), 11.48 MiB | 829 KiB/s, done.
Resolving deltas: 100% (19961/19961), done.
$ git st
# On branch work
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
#       new file:   .gitmodules
#       new file:   jquery
#       new file:   jquery.ui
#
$ git ci -m 'Adding jquery and jquery-ui'
[work (root-commit) 02579f7] Adding jquery and jquery-ui
 3 files changed, 8 insertions(+), 0 deletions(-)
 create mode 100644 .gitmodules
 create mode 160000 jquery
 create mode 160000 jquery.ui
$ LC_ALL=C git rebase --onto work work master 
First, rewinding head to replay your work on top of it...
Applying: new resource loading strategies (without JS2)
Applying: more moving around as I de-JS2-ify this app
Applying: extension changes for UploadWizard (merged from r73549 to HEAD in 
branches/uploadwizard/phase3)
Applying: set default logging to be none
Applying: removed erroneous proxy check (we only need that when embedded in 
iframe, not when calling a different host); more careful checking of API output
Applying: added licensing tutorial to UploadWizard
Applying: reasonable optimization & minification for resources without 
ResourceLoader
Applying: Fix ResourceLoader support in UploadWizard, which was broken by 
r76182, possibly earlier.
Applying: rudimentary api for accessing imageinfo. Not actually part of 
UploadWizard (this code is obsolete) just abstracting into a library
Applying: moved initial HTML of page from JS to PHP, including tutorial 
generation (much faster now!)
Applying: added note about generating minified resources
Applying: remove tab hack, restores compatibility (partially) with non-Vector 
skins, fix bug#25796
Applying: fixed missing dependencies on suggestions, autoEllipsis (wish this 
could be done more centralized...) fixes bug#25797
Applying: added autoEllipsis to combined JS files (forgot to run 
generateMinifiedResources)
Applying: clickable area for tutorial, also centered
Applying: fixed trailing period
Applying: make failure fail
Applying: removed inaccurate comment about log lines being removed
Applying: removing errant debugger call
Applying: various layout fixes in anticipation of other fixes, expanded and 
moved removeCtrl
Applying: multiple progress and end states, clean up file controls after 
completion
Applying: Fixed trailing comma.
Applying: First pass at improving the visual integration with Vector.
Applying: Simplified the step UI, using flat vector colors.
Applying: - Changed spinner icons to neutral colors (orange is for errors)
Applying: give error icon same centering
Applying: group progress bar correctly tracks successful / unsuccessful uploads
Applying: made all thumbnail generation block until thumbnail loaded and 
cached, simplified success callback
Applying: decent error messaging
Applying: Ported jQuery-based implementation of console fallback from 
phase3/resources/mediawiki/mediawiki.log.js - This resolved some IE6/7/8 bugs 
when the software was loaded in debug mode (enabling the mw.Log.js code).
Applying: Rebuilt combined resources.
Applying: IE fix for off-by-one errors which occur when % is used for widths in 
a set of multiple items. This allows each item to begin -1px to the left, 
leaving 1px of extra space per item, which in this case is not visible.
Applying: Overhaul to error handling, interface flow on file upload page, and 
some aspects of how it looks.
Applying: conflict between window.mw and window.mediaWiki. Settling on 
mediaWiki, I think that is the new standard Trevor wants
Applying: you say mw, and I say mediaWiki, let's call the whole thing off until 
Resource Loader standardizes this
Applying: show final public URL for image (not UploadStash url) bug#25997, 
bug#26048
Applying: followup to r77139, forgot to run the minifier scripts
Applying: Set datepicker to extend back to the year 1800 - the UI is pretty 
streamlined for recent dates, more work would need to happen to get this 
datepicker to be easy to use for very old dates. Even with 1800, the user has 
to click the select control and then the oldest item once for each 10 years 
back in time from today, which as of today is about 21 times... Nonetheless, 
this can reasonably solve bug #24698 for now, a more robust solution would 
server users better though.
Applying: Rebuild combined files for r77199.
Applying: Resolves bug #25826 - IE has strange off-by-1 errors when using 
percentages, so we use a negative margin technique which results in 20% -1px, 
and thus 5px short of 100% left over. By applying borders to the individual 
steps instead of the steps container, this extra space is invisible.
Applying: Changes specified in 
http://usability.wikimedia.org/wiki/Multimedia:Upload_wizard#Messaging
Applying: followup to r77212, forgot AGAIN to minify
Applying: fix bug#26903, {{SITENAME}} in UploadWizard
Applying: check thumbnail a bit more carefully
Applying: minified resources
Applying: UploadWizard: Account for the fact that mediaWiki.msg might not exist 
(in pre-RL environments)
Applying: hidden category for stats purposes
Applying: Fix r77466 for nonexistent messages
Applying: UploadWizard: Set maxSimultaneousUploads to 1, I suspect simultaneous 
uploads are effecting a bug we're seeing somehow
Applying: Add some linebreaks to the wikitext to make it cleaner/easier to read 
and edit
Applying: Revert r77504 per CR. 
Applying: Recombine resources for r77816
Applying: (bug 26177) Remove usage of undefined 'otherinfo' message from 
UploadWizard output
Applying: replace string.trim() with .trim() for compatibility with older JS 
versions
Applying: (bug 26099) IE wants the attr to be encType, case sensitive, or it 
will not upload the file
Applying: minifications, ensuing from r78642
Applying: removing trailing commas, IE hates these
Applying: jslint fixes
Applying: jslint fixes, formatting & indentation
Applying: jslint fixes
Applying: jslint fixes
Applying: jslint fixes
Applying: removed obsolete code (replaced by mw.Title.js)
Applying: jslint fixes
Applying: jslint fixes
Applying: Add some missing ; at end of statements
/usr/lib/git-core/git-am: line 749: 31859 Aborted                 (core dumped) 
git apply --index "$dotest/patch" > /dev/null 2>&1
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
fatal: Unable to create '/home/azatoth/public_html/test/.git/index.lock': File 
exists.

If no other git process is currently running, this probably means a
git process crashed in this repository earlier. Make sure no other git
process is running and remove the file manually to continue.
Failed to merge in the changes.
Patch failed at 0066 Add some missing ; at end of statements

When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To restore the original branch and stop rebasing run "git rebase --abort".
$ git st
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       new file:   .gitmodules
#       modified:   apiTokenMisc.js
#       modified:   combined.js
#       modified:   combined.min.js
#       modified:   dir.combined.css
#       new file:   jquery
#       new file:   jquery.ui
#       modified:   language/classes/LanguageAm.js
#       modified:   language/classes/LanguageAr.js
#       modified:   language/classes/LanguageBat_smg.js
#       modified:   language/classes/LanguageBe.js
#       modified:   language/classes/LanguageBe_tarask.js
#       modified:   language/classes/LanguageBh.js
#       modified:   language/classes/LanguageBs.js
#       modified:   language/classes/LanguageCs.js
#       modified:   language/classes/LanguageCu.js
#       modified:   language/classes/LanguageCy.js
#       modified:   language/classes/LanguageDsb.js
#       modified:   language/classes/LanguageFr.js
#       modified:   language/classes/LanguageGa.js
#       modified:   language/classes/LanguageGd.js
#       modified:   language/classes/LanguageGv.js
#       modified:   language/classes/LanguageHe.js
#       modified:   language/classes/LanguageHi.js
#       modified:   language/classes/LanguageHr.js
#       modified:   language/classes/LanguageHsb.js
#       modified:   language/classes/LanguageHy.js
#       modified:   language/classes/LanguageKsh.js
#       modified:   language/classes/LanguageLn.js
#       modified:   language/classes/LanguageLt.js
#       modified:   language/classes/LanguageLv.js
#       modified:   language/classes/LanguageMg.js
#       modified:   language/classes/LanguageMk.js
#       modified:   language/classes/LanguageMo.js
#       modified:   language/classes/LanguageMt.js
#       modified:   language/classes/LanguageNso.js
#       modified:   language/classes/LanguagePl.js
#       modified:   language/classes/LanguagePt_br.js
#       modified:   language/classes/LanguageRo.js
#       modified:   language/classes/LanguageRu.js
#       modified:   language/classes/LanguageSe.js
#       modified:   language/classes/LanguageSh.js
#       modified:   language/classes/LanguageSk.js
#       modified:   language/classes/LanguageSl.js
#       modified:   language/classes/LanguageSma.js
#       modified:   language/classes/LanguageSr.js
#       modified:   language/classes/LanguageSr_ec.js
#       modified:   language/classes/LanguageSr_el.js
#       modified:   language/classes/LanguageTi.js
#       modified:   language/classes/LanguageTl.js
#       modified:   language/classes/LanguageUk.js
#       modified:   language/classes/LanguageWa.js
#       modified:   language/mw.Language.js
#       modified:   language/mw.LanguageTransform.js
#       modified:   language/mw.Parser.js
#       deleted:    mediawiki.parser2.js
#       modified:   mw.Api.edit.js
#       modified:   mw.Api.js
#       modified:   mw.ApiMisc.js
#       modified:   mw.ApiProxy.js
#       modified:   mw.ApiQueryImageInfo.js
#       modified:   mw.ApiUploadHandler.js
#       modified:   mw.DestinationChecker.js
#       modified:   mw.GroupProgressBar.js
#       modified:   mw.IframeTransport.js
#       modified:   mw.LanguageUpWiz.js
#       modified:   mw.Log.js
#       modified:   mw.MockUploadHandler.js
#       modified:   mw.Title.js
#       modified:   mw.UploadApiProcessor.js
#       modified:   mw.UploadWizard.js
#       modified:   mw.UploadWizardDeed.js
#       modified:   mw.UploadWizardLicenseInput.js
#       modified:   mw.UploadWizardUtil.js
#       modified:   mw.Uri.js
#       modified:   mw.Utilities.js
#       modified:   mw.UtilitiesTime.js
#       modified:   mw.units.js
#       modified:   uploadWizard.css
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       core
$ LC_ALL=C gdb /usr/bin/git core --batch -ex bt
[New Thread 31859]

warning: Can't read pathname for load map: Input/output error.
Core was generated by `git apply --index 
/home/azatoth/public_html/test/.git/rebase-apply/patch'.
Program terminated with signal 6, Aborted.
#0  0xb77ac424 in __kernel_vsyscall ()
#0  0xb77ac424 in __kernel_vsyscall ()
#1  0xb763a751 in raise () from /lib/i686/cmov/libc.so.6
#2  0xb763db82 in abort () from /lib/i686/cmov/libc.so.6
#3  0xb76338b8 in __assert_fail () from /lib/i686/cmov/libc.so.6
#4  0x0804e6da in ?? ()
#5  0x0804fb24 in ?? ()
#6  0x080506d3 in ?? ()
#7  0x08052ebd in ?? ()
#8  0x08053e4f in ?? ()
#9  0x0804b577 in ?? ()
#10 0x0804b783 in ?? ()
#11 0xb7626c76 in __libc_start_main () from /lib/i686/cmov/libc.so.6
#12 0x0804aea1 in ?? ()
$ cat /home/azatoth/public_html/test/.git/rebase-apply/patch
---
 language/classes/LanguageAm.js        |    2 +-
 language/classes/LanguageAr.js        |    2 +-
 language/classes/LanguageBat_smg.js   |    2 +-
 language/classes/LanguageBe.js        |    2 +-
 language/classes/LanguageBe_tarask.js |    2 +-
 language/classes/LanguageBh.js        |    2 +-
 language/classes/LanguageBs.js        |    2 +-
 language/classes/LanguageCs.js        |    2 +-
 language/classes/LanguageCu.js        |    2 +-
 language/classes/LanguageCy.js        |    2 +-
 language/classes/LanguageDsb.js       |    2 +-
 language/classes/LanguageFr.js        |    2 +-
 language/classes/LanguageGa.js        |    2 +-
 language/classes/LanguageGd.js        |    2 +-
 language/classes/LanguageGv.js        |    2 +-
 language/classes/LanguageHe.js        |    2 +-
 language/classes/LanguageHi.js        |    2 +-
 language/classes/LanguageHr.js        |    2 +-
 language/classes/LanguageHsb.js       |    2 +-
 language/classes/LanguageHy.js        |    2 +-
 language/classes/LanguageKsh.js       |    2 +-
 language/classes/LanguageLn.js        |    2 +-
 language/classes/LanguageLt.js        |    2 +-
 language/classes/LanguageLv.js        |    2 +-
 language/classes/LanguageMg.js        |    2 +-
 language/classes/LanguageMk.js        |    2 +-
 language/classes/LanguageMo.js        |    2 +-
 language/classes/LanguageMt.js        |    2 +-
 language/classes/LanguageNso.js       |    2 +-
 language/classes/LanguagePl.js        |    2 +-
 language/classes/LanguagePt_br.js     |    2 +-
 language/classes/LanguageRo.js        |    2 +-
 language/classes/LanguageRu.js        |    2 +-
 language/classes/LanguageSe.js        |    2 +-
 language/classes/LanguageSh.js        |    2 +-
 language/classes/LanguageSk.js        |    2 +-
 language/classes/LanguageSl.js        |    2 +-
 language/classes/LanguageSma.js       |    2 +-
 language/classes/LanguageSr.js        |    2 +-
 language/classes/LanguageSr_ec.js     |    2 +-
 language/classes/LanguageSr_el.js     |    2 +-
 language/classes/LanguageTi.js        |    2 +-
 language/classes/LanguageTl.js        |    2 +-
 language/classes/LanguageUk.js        |    2 +-
 language/classes/LanguageWa.js        |    2 +-
 language/mw.LanguageTransform.js      |    2 +-
 mw.ApiMisc.js                         |    4 ++--
 mw.UploadApiProcessor.js              |    2 +-
 48 files changed, 49 insertions(+), 49 deletions(-)

diff --git a/language/classes/LanguageAm.js b/language/classes/LanguageAm.js
index 
3ab85290d8040527db5b319f0ab5569bd281733a..8ee329dbcb3bfc75711d4b611c5367a5ff3da1e4
 100644
--- a/language/classes/LanguageAm.js
+++ b/language/classes/LanguageAm.js
@@ -7,4 +7,4 @@ mw.Language.convertPlural = function( count, forms ){
        forms = mw.Language.preConvertPlural( forms, 2 );
 
        return ( count <= 1 ) ? forms[0] : forms[1];    
-}
+};
diff --git a/language/classes/LanguageAr.js b/language/classes/LanguageAr.js
index 
dafc528bd2cb3fd665ffd96efab75076d8d695ac..1dba2bf5812e76fb0418ad3e9fed84523ad20c0e
 100644
--- a/language/classes/LanguageAr.js
+++ b/language/classes/LanguageAr.js
@@ -21,7 +21,7 @@ mw.Language.convertPlural = function( count, forms ){
        }
                
        return forms[ index ];
-}
+};
 
 // Update the digitTransformTable for ar language key
 mw.Language.digitTransformTable = {
diff --git a/language/classes/LanguageBat_smg.js 
b/language/classes/LanguageBat_smg.js
index 
b07fee7b4991218a79e8aa5ef44818a35ace493c..ae60fa23eb3cb124db0138f405ddc824b5ae310f
 100644
--- a/language/classes/LanguageBat_smg.js
+++ b/language/classes/LanguageBat_smg.js
@@ -19,4 +19,4 @@ mw.Language.convertPlural = function( count, forms ) {
        } else {
                return forms[3];
        }
-}
\ No newline at end of file
+};
\ No newline at end of file
diff --git a/language/classes/LanguageBe.js b/language/classes/LanguageBe.js
index 
19c12427c3c0ed269515174812c0d0d1ded295ee..cbdd5f48c36d6f1b936e09f95ec292ab994904b6
 100644
--- a/language/classes/LanguageBe.js
+++ b/language/classes/LanguageBe.js
@@ -30,4 +30,4 @@
                                default: return forms[2];
                        }
                }
-       }
+       };
diff --git a/language/classes/LanguageBe_tarask.js 
b/language/classes/LanguageBe_tarask.js
index 
05fdde28b2293fed9db686a45cfad26cc39d2f29..ca8a5140585f9245bebd822a4c14a12fd9a41611
 100644
--- a/language/classes/LanguageBe_tarask.js
+++ b/language/classes/LanguageBe_tarask.js
@@ -37,4 +37,4 @@ mw.Language.convertPlural = function( count, forms ) {
                        default: return forms[2];
                }
        }
-}
+};
diff --git a/language/classes/LanguageBh.js b/language/classes/LanguageBh.js
index 
f9742abb1aaf6b192751a81b7bc8373bafa442c6..1b20d1c2df989b6d0d865bce4fb695b65513c629
 100644
--- a/language/classes/LanguageBh.js
+++ b/language/classes/LanguageBh.js
@@ -11,4 +11,4 @@ mw.Language.convertPlural = function( count, forms ) {
        forms = mw.Language.preConvertPlural( forms, 2 );
 
        return (count <= 1) ? forms[0] : forms[1];
-}
+};
diff --git a/language/classes/LanguageBs.js b/language/classes/LanguageBs.js
index 
82e83aeb4e4ef36de888ef4a9602698db0a931ad..09ec170686cde16dbe798c1939bc8aa6508ed750
 100644
--- a/language/classes/LanguageBs.js
+++ b/language/classes/LanguageBs.js
@@ -20,4 +20,4 @@ mw.Language.convertPlural = function( count, forms ) {
                        default: return forms[2];
                }
        }
-}
+};
diff --git a/language/classes/LanguageCs.js b/language/classes/LanguageCs.js
index 
7e02119aab184355462bc04eaf829ad304709b7d..dcb42ccfcc54af3458d4b54aa450dbd1774f64de
 100644
--- a/language/classes/LanguageCs.js
+++ b/language/classes/LanguageCs.js
@@ -26,4 +26,4 @@ mw.Language.convertPlural = function( count, forms ) {
                default:                        
                        return forms[2];
        }
-}
+};
diff --git a/language/classes/LanguageCu.js b/language/classes/LanguageCu.js
index 
a0a0ca8d32844315f96b3cab56e196d4a60b3b3f..c39c9df109e9cc01948791deea61583dc5501b5a
 100644
--- a/language/classes/LanguageCu.js
+++ b/language/classes/LanguageCu.js
@@ -16,5 +16,5 @@ mw.Language.convertPlural = function( count, forms ) {
                case 4:  return forms[2];
                default: return forms[3];
        }
-}
+};
 
diff --git a/language/classes/LanguageCy.js b/language/classes/LanguageCy.js
index 
12607d4270ff3b0cee6a87bb3b6fc47087caf9a8..0153fca6749cd6551f9756c8578a6cc678847124
 100644
--- a/language/classes/LanguageCy.js
+++ b/language/classes/LanguageCy.js
@@ -19,4 +19,4 @@
                } else {
                        return forms[5];
                }
-       }
+       };
diff --git a/language/classes/LanguageDsb.js b/language/classes/LanguageDsb.js
index 
3d0859a81e408ebfd73cd921048e3e9642f7bd2b..c1dcfee1ffb5bdcab02f53c2578ca1a6958ac4ce
 100644
--- a/language/classes/LanguageDsb.js
+++ b/language/classes/LanguageDsb.js
@@ -17,4 +17,4 @@
                        case 4:  return forms[2]; // plural
                        default: return forms[3]; // pluralgen
                }
-       }
+       };
diff --git a/language/classes/LanguageFr.js b/language/classes/LanguageFr.js
index 
8391ced4e034c60ea0ab374026001dc633322fae..fb18805e0e92b90be68e0b5691b1d659dc2d9e9d
 100644
--- a/language/classes/LanguageFr.js
+++ b/language/classes/LanguageFr.js
@@ -11,4 +11,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguageGa.js b/language/classes/LanguageGa.js
index 
8d8a0b00abcf313a23e306eb071eacdc96926ab9..7250a2c025c7aae91f26f38a52937ce5622acc3d
 100644
--- a/language/classes/LanguageGa.js
+++ b/language/classes/LanguageGa.js
@@ -19,4 +19,4 @@
                        $index = 2;
                }
                return forms[$index];
-       }
+       };
diff --git a/language/classes/LanguageGd.js b/language/classes/LanguageGd.js
index 
67c77484588a64171c3ce5108e3872cb778b52e8..5ade04caa9c33b5703bc742d15c5e6a6f63a8cd9
 100644
--- a/language/classes/LanguageGd.js
+++ b/language/classes/LanguageGd.js
@@ -30,4 +30,4 @@
                } else {
                        return forms[3];
                }
-       }
+       };
diff --git a/language/classes/LanguageGv.js b/language/classes/LanguageGv.js
index 
2c1d6a229791f1b8f3d93f33059a4f5aea646a24..35d197c1d570fb7f32654f8ceec5728c24b4cfd8
 100644
--- a/language/classes/LanguageGv.js
+++ b/language/classes/LanguageGv.js
@@ -21,5 +21,5 @@
                                default: return forms[3];
                        }
                }
-       }
+       };
 
diff --git a/language/classes/LanguageHe.js b/language/classes/LanguageHe.js
index 
7e321f823d9595f4ec8ea17c09f56567d4bdaac5..44bbeab4064cd9a5f9019614ae1e6e230ddc32a2
 100644
--- a/language/classes/LanguageHe.js
+++ b/language/classes/LanguageHe.js
@@ -31,4 +31,4 @@
                } else {
                        return forms[1];
                }
-       }
+       };
diff --git a/language/classes/LanguageHi.js b/language/classes/LanguageHi.js
index 
6fbb39cd7c7f36f171478885c9a5aa874440774c..00e58dd9a31dad2a5e222c60982dbb9662181927
 100644
--- a/language/classes/LanguageHi.js
+++ b/language/classes/LanguageHi.js
@@ -11,4 +11,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguageHr.js b/language/classes/LanguageHr.js
index 
b2e1b4ef32100aad4e96cab96f468a7018da3258..e1851c83e65019779efda385df5e2ae63dfb132a
 100644
--- a/language/classes/LanguageHr.js
+++ b/language/classes/LanguageHr.js
@@ -22,4 +22,4 @@
                                default: return forms[2];
                        }
                }
-       }
+       };
diff --git a/language/classes/LanguageHsb.js b/language/classes/LanguageHsb.js
index 
b84f8bfbb5056a8b180eee7cc5a53b791d226dcd..868b4b061a734f0d587c3b5ce1383a8e532c59f7
 100644
--- a/language/classes/LanguageHsb.js
+++ b/language/classes/LanguageHsb.js
@@ -15,4 +15,4 @@
                        case 4:  return forms[2]; // plural
                        default: return forms[3]; // pluralgen
                }
-       }
+       };
diff --git a/language/classes/LanguageHy.js b/language/classes/LanguageHy.js
index 
c32f7c485666771d2a2f97d7e8fab6e319d4e836..0c6707946b5ad5029903fb190b3fe77d0717ebe8
 100644
--- a/language/classes/LanguageHy.js
+++ b/language/classes/LanguageHy.js
@@ -11,5 +11,5 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (Math.abs(count) <= 1) ? forms[0] : forms[1];
-       }
+       };
        
diff --git a/language/classes/LanguageKsh.js b/language/classes/LanguageKsh.js
index 
37ca2e6442802ca37dfc40c0998fbcd36adc9761..d6b3c0a85be65c3d9e2e643472293d313658856c
 100644
--- a/language/classes/LanguageKsh.js
+++ b/language/classes/LanguageKsh.js
@@ -21,4 +21,4 @@
                } else {
                        return forms[1];
                }
-       }
+       };
diff --git a/language/classes/LanguageLn.js b/language/classes/LanguageLn.js
index 
4fe17e3f4c6bd40dfd658533c037a0406d983c23..863249788352f01908b785f4c9be8bb0860503e3
 100644
--- a/language/classes/LanguageLn.js
+++ b/language/classes/LanguageLn.js
@@ -13,4 +13,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguageLt.js b/language/classes/LanguageLt.js
index 
1988a9b91f91411f1d0576090c49552e1d21121e..450e0704600bacc533a6cb6c7cb883dc685bf574
 100644
--- a/language/classes/LanguageLt.js
+++ b/language/classes/LanguageLt.js
@@ -27,4 +27,4 @@
                        return forms[1];
                        
                return forms[2];
-       }
+       };
diff --git a/language/classes/LanguageLv.js b/language/classes/LanguageLv.js
index 
3d9a6a5d092a154847aa80e156c3c096d23c7a34..eb84acdc474c01cad0cff1ebc283f7292f3a2ca5
 100644
--- a/language/classes/LanguageLv.js
+++ b/language/classes/LanguageLv.js
@@ -28,4 +28,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return ( ( count % 10 == 1 ) && ( count % 100 != 11 ) ) ? 
forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguageMg.js b/language/classes/LanguageMg.js
index 
6fbb39cd7c7f36f171478885c9a5aa874440774c..00e58dd9a31dad2a5e222c60982dbb9662181927
 100644
--- a/language/classes/LanguageMg.js
+++ b/language/classes/LanguageMg.js
@@ -11,4 +11,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguageMk.js b/language/classes/LanguageMk.js
index 
ab5bc3e6f29f9116b1a9a8a44958c1056ddc1ff7..62a638a6644840ee04732f70ff839ce96ef1dc93
 100644
--- a/language/classes/LanguageMk.js
+++ b/language/classes/LanguageMk.js
@@ -16,4 +16,4 @@
                } else {
                        return forms[1];
                }
-       }
+       };
diff --git a/language/classes/LanguageMo.js b/language/classes/LanguageMo.js
index 
69637e630f3b3fde73b7e44d6cafdc83dcc85f4c..357d4fbec87e22786a9db22b8d516393022684bc
 100644
--- a/language/classes/LanguageMo.js
+++ b/language/classes/LanguageMo.js
@@ -18,4 +18,4 @@
                        $index = 2;
                }
                return forms[$index];
-       }
+       };
diff --git a/language/classes/LanguageMt.js b/language/classes/LanguageMt.js
index 
2f421acf5c0ce940cbf44126df388d62592c707c..6920340e8cff76284eb75d4991b2dba57e160dc5
 100644
--- a/language/classes/LanguageMt.js
+++ b/language/classes/LanguageMt.js
@@ -21,4 +21,4 @@
                        index = 3;
                }
                return forms[index];
-       }
+       };
diff --git a/language/classes/LanguageNso.js b/language/classes/LanguageNso.js
index 
6fbb39cd7c7f36f171478885c9a5aa874440774c..00e58dd9a31dad2a5e222c60982dbb9662181927
 100644
--- a/language/classes/LanguageNso.js
+++ b/language/classes/LanguageNso.js
@@ -11,4 +11,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguagePl.js b/language/classes/LanguagePl.js
index 
c6a8eca497877821b8302c6b74f2b2db5be4f7da..858731bb69327234b9a9481f0df76fe5779739b6
 100644
--- a/language/classes/LanguagePl.js
+++ b/language/classes/LanguagePl.js
@@ -19,4 +19,4 @@
                        default:
                                return forms[2];   // plural genitive
                }
-       }
+       };
diff --git a/language/classes/LanguagePt_br.js 
b/language/classes/LanguagePt_br.js
index 
6e0fc22067b189540b314c269de25d80b8dbbd05..53edabf7b0e0448c772988bf6e0d4df090468a9c
 100644
--- a/language/classes/LanguagePt_br.js
+++ b/language/classes/LanguagePt_br.js
@@ -12,4 +12,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguageRo.js b/language/classes/LanguageRo.js
index 
c24fa1bfae5c8092d52eca09621bf92f05744817..f2c3c44bf2aa2fa10321b3e2ee81053d52ae0f44
 100644
--- a/language/classes/LanguageRo.js
+++ b/language/classes/LanguageRo.js
@@ -18,4 +18,4 @@
                        $index = 2;
                }
                return forms[$index];
-       }
+       };
diff --git a/language/classes/LanguageRu.js b/language/classes/LanguageRu.js
index 
01c777d7c10d706b8e2e854e45249233f727540b..809c47a7a0175f4b67b23931acab0369be9327d8
 100644
--- a/language/classes/LanguageRu.js
+++ b/language/classes/LanguageRu.js
@@ -43,6 +43,6 @@
                                default: return forms[2];
                        }
                }
-       }
+       };
 
        
\ No newline at end of file
diff --git a/language/classes/LanguageSe.js b/language/classes/LanguageSe.js
index 
be30e0090e382480a438bdde0de1ea53cff3d251..cefdde66fa2cab325712c930cf9cde93d7ca465e
 100644
--- a/language/classes/LanguageSe.js
+++ b/language/classes/LanguageSe.js
@@ -18,4 +18,4 @@
                        return ''               
                }
                return forms[ index ];
-       }
+       };
diff --git a/language/classes/LanguageSh.js b/language/classes/LanguageSh.js
index 
e3b8444dd51b91b6d09fabe3294366817de68fe4..3018290e1fa7d2d34c00daf8dad976427036ca8e
 100644
--- a/language/classes/LanguageSh.js
+++ b/language/classes/LanguageSh.js
@@ -24,4 +24,4 @@
                                default: return forms[2];
                        }
                }
-       }
+       };
diff --git a/language/classes/LanguageSk.js b/language/classes/LanguageSk.js
index 
5a8086b2d9d8afc82e8de05eed321e3a622d89ca..a1694c8db68ec7f6f573c9f4bbd153bb8361cd25
 100644
--- a/language/classes/LanguageSk.js
+++ b/language/classes/LanguageSk.js
@@ -16,4 +16,4 @@
                        $index = 2;
                }
                return forms[$index];
-       }
+       };
diff --git a/language/classes/LanguageSl.js b/language/classes/LanguageSl.js
index 
fdbaab439105a718f3adcf68a01e8706a54988a5..aeaa89d45d1365065ee83133d62c62535ca2b421
 100644
--- a/language/classes/LanguageSl.js
+++ b/language/classes/LanguageSl.js
@@ -21,4 +21,4 @@
                        $index = 4;
                }
                return forms[$index];
-       }
+       };
diff --git a/language/classes/LanguageSma.js b/language/classes/LanguageSma.js
index 
2c582ea6924e6929c892a56d79450b42acfa6b74..fad522a0dd4f5ebecae352c542b28628dbc2c37c
 100644
--- a/language/classes/LanguageSma.js
+++ b/language/classes/LanguageSma.js
@@ -18,4 +18,4 @@
                }
                
                return forms[ index ];
-       }
+       };
diff --git a/language/classes/LanguageSr.js b/language/classes/LanguageSr.js
index 
fd5f600417ec3e7ce47347d3cc754b4cc7989e4e..2dc73b46ba2a6bc8904ee25f2c96ce13d20a3826
 100644
--- a/language/classes/LanguageSr.js
+++ b/language/classes/LanguageSr.js
@@ -21,4 +21,4 @@
                                default: return forms[2];
                        }
                }
-       }
+       };
diff --git a/language/classes/LanguageSr_ec.js 
b/language/classes/LanguageSr_ec.js
index 
f85f529611781a08fc88f334faf6315081adc1b0..8685dcaa33d4db168d16858e4a4b5e365c6842f7
 100644
--- a/language/classes/LanguageSr_ec.js
+++ b/language/classes/LanguageSr_ec.js
@@ -15,4 +15,4 @@
                                default: return forms[2];
                        }
                }
-       }
+       };
diff --git a/language/classes/LanguageSr_el.js 
b/language/classes/LanguageSr_el.js
index 
3174d8f049cffb18b69d5ea07a3cbf13b631eda4..db8c900a9fde0a5a8f92d51844ce99faf43eadb7
 100644
--- a/language/classes/LanguageSr_el.js
+++ b/language/classes/LanguageSr_el.js
@@ -21,4 +21,4 @@
                                        return forms[2];
                        }
                }
-       }
+       };
diff --git a/language/classes/LanguageTi.js b/language/classes/LanguageTi.js
index 
6fbb39cd7c7f36f171478885c9a5aa874440774c..00e58dd9a31dad2a5e222c60982dbb9662181927
 100644
--- a/language/classes/LanguageTi.js
+++ b/language/classes/LanguageTi.js
@@ -11,4 +11,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguageTl.js b/language/classes/LanguageTl.js
index 
6fbb39cd7c7f36f171478885c9a5aa874440774c..00e58dd9a31dad2a5e222c60982dbb9662181927
 100644
--- a/language/classes/LanguageTl.js
+++ b/language/classes/LanguageTl.js
@@ -11,4 +11,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/classes/LanguageUk.js b/language/classes/LanguageUk.js
index 
5f6500c1b65204736d8039a53b15f2ceb7a75a2e..ad59c85d0f105b3bc1b2ad825b274b4379deb2c3
 100644
--- a/language/classes/LanguageUk.js
+++ b/language/classes/LanguageUk.js
@@ -26,4 +26,4 @@
                                default: return forms[2];
                        }
                }
-       }
+       };
diff --git a/language/classes/LanguageWa.js b/language/classes/LanguageWa.js
index 
0fa7a30634f63edc1a08529f26508305d7cae387..4a2bed40681fdae7c58c5434c627ca8969d8f795
 100644
--- a/language/classes/LanguageWa.js
+++ b/language/classes/LanguageWa.js
@@ -13,4 +13,4 @@
                forms = mw.Language.preConvertPlural( forms, 2 );
 
                return (count <= 1) ? forms[0] : forms[1];
-       }
+       };
diff --git a/language/mw.LanguageTransform.js b/language/mw.LanguageTransform.js
index 
d8c0738ef41171f2f58f16df958d5439c69d73af..037e9657ac628a389193fa1d6df6c9fd6cd90b95
 100644
--- a/language/mw.LanguageTransform.js
+++ b/language/mw.LanguageTransform.js
@@ -181,5 +181,5 @@
                }
                // By default return the base 'en' class
                return 'en';
-       }
+       };
        
diff --git a/mw.ApiMisc.js b/mw.ApiMisc.js
index 
365e19c2761e7054000559d58f4a0133acbdb2b0..e1fc83280320b08f9e8f1ee569e6a5c8aaff1d09
 100644
--- a/mw.ApiMisc.js
+++ b/mw.ApiMisc.js
@@ -70,7 +70,7 @@
                        var parameters = {
                                'action':'query',
                                'meta':'userinfo'
-                       }
+                       };
                        
                        // Do request 
                        this.get( request, function( data ) {
@@ -159,6 +159,6 @@
                                return true;
                        }
                        return false;
-               }
+               };
                
 
diff --git a/mw.UploadApiProcessor.js b/mw.UploadApiProcessor.js
index 
822d905095d6bcdd86b077e883e19dabde47d062..806621e0dac485df69215bfafbcfbd87d4577bcf
 100644
--- a/mw.UploadApiProcessor.js
+++ b/mw.UploadApiProcessor.js
@@ -172,7 +172,7 @@ mw.UploadApiProcessor.prototype = {
                                return false;
                        }
 
-                       mw.log( 'get key: ' + _this.error_msg_key[ error_code ] 
)
+                       mw.log( 'get key: ' + _this.error_msg_key[ error_code ] 
);
                        mw.getRemoteMsg( _this.error_msg_key[ error_code ], 
function() {
                                _this.ui.setPrompt(
                                        gM( 'mwe-uploaderror' ),
-- 
1.7.4.1

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to