[ https://issues.apache.org/jira/browse/CB-6992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14038616#comment-14038616 ]
Vladimir Kotikov commented on CB-6992: -------------------------------------- Problem is coming from here: https://github.com/apache/cordova-lib/blob/master/cordova-lib/src/cordova/metadata/ios_parser.js#L116 when comparing `name` and `this.originalName` At first look they are equal, e.g. following code: {noformat} events.emit('warn', 'name: ' + name); events.emit('warn', 'this.originalName: ' + this.originalName); {noformat} will print {noformat} name: umlaÜt this.originalName: umlaÜt {noformat} But in deeper look this stings are not equal!: {noformat} function printString(str) { var bytes = []; for (var i = 0; i < str.length; ++i) { bytes.push(str.charCodeAt(i)); } events.emit('warn', str + ': ' + bytes); } {noformat} {noformat} printString(name); printString(this.originalName); {noformat} will print {noformat} umlaÜt: 117,109,108,97,220,116 umlaÜt: 117,109,108,97,85,776,116 {noformat} > Projects with an app/display name with Ü fail to add the iOS platform > --------------------------------------------------------------------- > > Key: CB-6992 > URL: https://issues.apache.org/jira/browse/CB-6992 > Project: Apache Cordova > Issue Type: Bug > Components: CLI, iOS > Affects Versions: 3.5.0 > Environment: uname: Darwin 13.1.0 Darwin Kernel Version 13.1.0: Thu > Jan 16 19:40:37 PST 2014; root:xnu-2422.90.20~2/RELEASE_X86_64 x86_64 > cordova-dev -v: 3.5.0-0.2.4 > cordova-lib: 0.21.3 > Node 0.10.26 > Reporter: Vladimir Kotikov > Priority: Critical > Labels: cli, configParser, ios > > Repro steps: > # cordova create test-umlaÜt com.test.umlaÜt umlaÜt > # cd test-umlaÜt/ > # cordova platform add ios > Platform add fails with following error: > {noformat} > mv: dest file already exists: > /Users/user/test/test-umlaÜt/platforms/ios/umlaÜt/umlaÜt-Info.plist > mv: dest file already exists: > /Users/user/test/test-umlaÜt/platforms/ios/umlaÜt/umlaÜt-Prefix.pch > shell.js: internal error > Error: EINVAL, invalid argument > '/Users/user/test/test-umlaÜt/platforms/ios/umlaÜt.xcodeproj' > at Object.fs.renameSync (fs.js:543:18) > at > /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/shell.js:495:8 > at Array.forEach (native) > at Object._mv > (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/shell.js:471:11) > at Object.mv > (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/shell.js:1491:23) > at pbxProject.<anonymous> > (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:145:27) > at pbxProject.EventEmitter.emit (events.js:98:17) > at pbxProject.<anonymous> > (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/xcode/lib/pbxProject.js:30:18) > at ChildProcess.EventEmitter.emit (events.js:98:17) > at handleMessage (child_process.js:318:10) > {noformat} -- This message was sent by Atlassian JIRA (v6.2#6252)