forked from cory/tildefriends
		
	Slightly improved error handling, some heuristics for number of cores to build with, and misc. work in progress changes.
git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@3246 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
		@@ -121,7 +121,13 @@ function invoke(handlers, argv) {
 | 
			
		||||
	var promises = [];
 | 
			
		||||
	if (handlers) {
 | 
			
		||||
		for (var i = 0; i < handlers.length; ++i) {
 | 
			
		||||
			promises.push(handlers[i].apply({}, argv));
 | 
			
		||||
			try {
 | 
			
		||||
				promises.push(handlers[i].apply({}, argv));
 | 
			
		||||
			} catch (error) {
 | 
			
		||||
				handlers.splice(i, 1);
 | 
			
		||||
				i--;
 | 
			
		||||
				promises.push(new Promise(function(resolve, reject) { reject(error); }));
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	return Promise.all(promises);
 | 
			
		||||
 
 | 
			
		||||
@@ -233,6 +233,11 @@ function updateWindows() {
 | 
			
		||||
 | 
			
		||||
function updateConversation() {
 | 
			
		||||
	if (gCurrentConversation) {
 | 
			
		||||
		terminal.cork();
 | 
			
		||||
		terminal.clear();
 | 
			
		||||
		terminal.print("...");
 | 
			
		||||
		terminal.uncork();
 | 
			
		||||
 | 
			
		||||
		Promise.all([
 | 
			
		||||
			gCurrentConversation.session.getHistory(gCurrentConversation.name),
 | 
			
		||||
			gCurrentConversation.session.getParticipants(gCurrentConversation.name),
 | 
			
		||||
@@ -405,7 +410,7 @@ function formatMessage(message) {
 | 
			
		||||
	var result;
 | 
			
		||||
	if (typeof message == "string") {
 | 
			
		||||
		for (let i = 0; i < message.length; i++) {
 | 
			
		||||
			if (message.charCodeAt(i) > 128 && message.charCodeAt(i) < 256) {
 | 
			
		||||
			if (message.charCodeAt(i) >= 128 /*&& message.charCodeAt(i) < 256*/) {
 | 
			
		||||
				message = message.substring(0, i) + "?" + message.substring(i + 1);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 
 | 
			
		||||
@@ -48,7 +48,12 @@ exports.ChatService = class {
 | 
			
		||||
		for (let i = self._callbacks.length - 1; i >= 0; i--) {
 | 
			
		||||
			let callback = self._callbacks[i];
 | 
			
		||||
			try {
 | 
			
		||||
				callback(message);
 | 
			
		||||
				callback(message).catch(function(error) {
 | 
			
		||||
					self._callbacks.splice(i, 1);
 | 
			
		||||
 | 
			
		||||
					// XXX: Send it to the other connections?
 | 
			
		||||
					print(error);
 | 
			
		||||
				});
 | 
			
		||||
			} catch (error) {
 | 
			
		||||
				self._callbacks.splice(i, 1);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,8 @@
 | 
			
		||||
#!/usr/bin/python -u
 | 
			
		||||
 | 
			
		||||
import multiprocessing
 | 
			
		||||
import os
 | 
			
		||||
import platform
 | 
			
		||||
import shutil
 | 
			
		||||
import stat
 | 
			
		||||
import subprocess
 | 
			
		||||
@@ -26,6 +28,11 @@ kV8Repository = 'https://github.com/v8/v8.git'
 | 
			
		||||
kV8Branch = 'branch-heads/5.1'
 | 
			
		||||
kV8Work = 'v8'
 | 
			
		||||
 | 
			
		||||
cores = multiprocessing.cpu_count()
 | 
			
		||||
if platform.machine() == 'armv7l':
 | 
			
		||||
	cores = 1
 | 
			
		||||
print 'Using', cores, 'cores.'
 | 
			
		||||
 | 
			
		||||
def run(*args, **kw):
 | 
			
		||||
	print 'Running:', args, kw
 | 
			
		||||
	subprocess.check_call(*args, **kw)
 | 
			
		||||
@@ -63,7 +70,7 @@ def updateUv():
 | 
			
		||||
 | 
			
		||||
	if sys.platform == 'linux2':
 | 
			
		||||
		run(['./gyp_uv.py', '-f', 'make'], cwd=kUvWork)
 | 
			
		||||
		run(['make', '-j8', '-C', 'out'], cwd=kUvWork)
 | 
			
		||||
		run(['make', '-j' + str(cores), '-C', 'out'], cwd=kUvWork)
 | 
			
		||||
	elif sys.platform == 'darwin':
 | 
			
		||||
		run(['./gyp_uv.py', '-f', 'xcode'], cwd=kUvWork)
 | 
			
		||||
		run(['xcodebuild', '-ARCHS="x86_64"', '-project', 'uv.xcodeproj', '-configuration', 'Release', '-target', 'All'], cwd=kUvWork)
 | 
			
		||||
@@ -116,7 +123,7 @@ def updateV8():
 | 
			
		||||
		run(['gclient' + extension, 'sync'], cwd=kV8Work)
 | 
			
		||||
 | 
			
		||||
	if sys.platform == 'linux2':
 | 
			
		||||
		run(['make', '-j4', 'native'], cwd=kV8Work)
 | 
			
		||||
		run(['make', '-j' + str(cores), 'native'], cwd=kV8Work)
 | 
			
		||||
	elif sys.platform == 'darwin':
 | 
			
		||||
		run(['build/gyp_v8', '-Dtarget_arch=x64'], cwd=kV8Work)
 | 
			
		||||
		run(['xcodebuild', '-project', 'build/all.xcodeproj', '-configuration', 'Release'], cwd=kV8Work)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user