Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(412)

Side by Side Diff: runtime/vm/timeline.cc

Issue 1331623002: Uses SNPRINT macro where possible. Otherwise uses #define for format. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Add back assembler functions Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include <cstdlib> 5 #include <cstdlib>
6 6
7 #include "vm/atomic.h" 7 #include "vm/atomic.h"
8 #include "vm/isolate.h" 8 #include "vm/isolate.h"
9 #include "vm/json_stream.h" 9 #include "vm/json_stream.h"
10 #include "vm/lockers.h" 10 #include "vm/lockers.h"
(...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after
434 if ((file_open == NULL) || (file_write == NULL) || (file_close == NULL)) { 434 if ((file_open == NULL) || (file_write == NULL) || (file_close == NULL)) {
435 return; 435 return;
436 } 436 }
437 437
438 FinishGlobalBlock(); 438 FinishGlobalBlock();
439 439
440 JSONStream js; 440 JSONStream js;
441 TimelineEventFilter filter; 441 TimelineEventFilter filter;
442 PrintJSON(&js, &filter); 442 PrintJSON(&js, &filter);
443 443
444 const char* format = "%s/dart-timeline-%" Pd ".json";
445 intptr_t pid = OS::ProcessId(); 444 intptr_t pid = OS::ProcessId();
446 intptr_t len = OS::SNPrint(NULL, 0, format, directory, pid); 445 char* filename = OS::SNCreate(NULL,
447 char* filename = reinterpret_cast<char*>(malloc(len + 1)); 446 "%s/dart-timeline-%" Pd ".json", directory, pid);
448 OS::SNPrint(filename, len + 1, format, directory, pid);
449 void* file = (*file_open)(filename, true); 447 void* file = (*file_open)(filename, true);
450 if (file == NULL) { 448 if (file == NULL) {
451 OS::Print("Failed to write timeline file: %s\n", filename); 449 OS::Print("Failed to write timeline file: %s\n", filename);
452 free(filename); 450 free(filename);
453 return; 451 return;
454 } 452 }
455 free(filename); 453 free(filename);
456 (*file_write)(js.buffer()->buf(), js.buffer()->length(), file); 454 (*file_write)(js.buffer()->buf(), js.buffer()->length(), file);
457 (*file_close)(file); 455 (*file_close)(file);
458 } 456 }
(...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after
826 824
827 825
828 TimelineEventBlock* TimelineEventBlockIterator::Next() { 826 TimelineEventBlock* TimelineEventBlockIterator::Next() {
829 ASSERT(current_ != NULL); 827 ASSERT(current_ != NULL);
830 TimelineEventBlock* r = current_; 828 TimelineEventBlock* r = current_;
831 current_ = current_->next(); 829 current_ = current_->next();
832 return r; 830 return r;
833 } 831 }
834 832
835 } // namespace dart 833 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698