Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 30042f5

Browse files
committedJun 2, 2015
Fixed an issue where node client was sending some unicode data which broke event submission.
We need to take a closer look into this in the future... nwjs/nw.js#1570 http://stackoverflow.com/questions/10430562/how-do-you-remove-unicode-characters-in-javascript
1 parent 8b667c0 commit 30042f5

File tree

4 files changed

+20
-29
lines changed

4 files changed

+20
-29
lines changed
 

‎dist/exceptionless.node.js

Lines changed: 8 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎dist/exceptionless.node.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎src/services/NodeEnvironmentInfoCollector.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@ export class NodeEnvironmentInfoCollector implements IEnvironmentInfoCollector {
2323
if (!os) {
2424
return null;
2525
}
26-
26+
2727
var environmentInfo: IEnvironmentInfo = {
2828
processor_count: os.cpus().length,
2929
total_physical_memory: os.totalmem(),
3030
available_physical_memory: os.freemem(),
3131
command_line: process.argv.join(' '),
32-
process_name: process.title,
32+
process_name: (process.title || '').replace(/[\uE000-\uF8FF]/g, ''),
3333
process_id: process.pid + '',
3434
process_memory_size: process.memoryUsage().heapTotal,
3535
//thread_id: '',

‎src/submission/NodeSubmissionClient.ts

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@ export class NodeSubmissionClient extends DefaultSubmissionClient {
1717
}
1818

1919
public sendRequest(config:Configuration, method:string, path:string, data:string, callback: (status:number, message:string, data?:string, headers?:Object) => void): void {
20-
function complete(response:http.IncomingMessage, data:string, headers:Object) {
20+
function complete(response:http.IncomingMessage, responseBody:string, responseHeaders:Object) {
2121
var message:string;
2222
if (response.statusCode === 0) {
2323
message = 'Unable to connect to server.';
2424
} else if (response.statusCode < 200 || response.statusCode > 299) {
2525
message = response.statusMessage || (<any>response).message;
2626
}
2727

28-
callback(response.statusCode || 500, message, data, headers);
28+
callback(response.statusCode || 500, message, responseBody, responseHeaders);
2929
}
3030

3131
var parsedHost = url.parse(config.serverUrl);
@@ -35,7 +35,7 @@ export class NodeSubmissionClient extends DefaultSubmissionClient {
3535
hostname: parsedHost.hostname,
3636
method: method,
3737
port: parsedHost.port && parseInt(parsedHost.port),
38-
path: path,
38+
path: path
3939
};
4040

4141
if (method === 'POST') {
@@ -44,21 +44,16 @@ export class NodeSubmissionClient extends DefaultSubmissionClient {
4444
'Content-Length': data.length
4545
}
4646
}
47-
47+
4848
options.headers['User-Agent'] = config.userAgent;
4949
var request:http.ClientRequest = (parsedHost.protocol === 'https' ? https : http).request(options, (response:http.IncomingMessage) => {
5050
var body = '';
51-
response.on('data', chunk => body += chunk);
52-
response.on('end', () => {
53-
complete(response, body, response.headers);
54-
});
55-
});
56-
57-
request.on('error', function(e) {
58-
callback(500, e.message);
51+
response.setEncoding('utf8');
52+
response.on('data', (chunk) => body += chunk);
53+
response.on('end', () => complete(response, body, response.headers));
5954
});
6055

61-
!!data && request.write(data);
62-
request.end();
56+
request.on('error', (error:Error) => callback(500, error.message));
57+
request.end(data);
6358
}
6459
}

0 commit comments

Comments
 (0)
Please sign in to comment.