about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2013-12-31 08:36:52 -0800
committerbors <bors@rust-lang.org>2013-12-31 08:36:52 -0800
commit250ca0eb85ca7bf4497cdf68ecbaa5f90dc7439d (patch)
treeb4b84716c5f5da1248350590d647b5883fa6764d /src/libstd
parentd459e805df076ace12ed3f7f57f2b1378f0e2403 (diff)
parentd255d4a4ff394da96bb669fef7a70871e08498fa (diff)
downloadrust-250ca0eb85ca7bf4497cdf68ecbaa5f90dc7439d.tar.gz
rust-250ca0eb85ca7bf4497cdf68ecbaa5f90dc7439d.zip
auto merge of #11236 : huonw/rust/sort-rust-log-help, r=sanxiyn
Fixes #8949.
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/rt/logging.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/libstd/rt/logging.rs b/src/libstd/rt/logging.rs
index 3f169b511df..dfcf49734df 100644
--- a/src/libstd/rt/logging.rs
+++ b/src/libstd/rt/logging.rs
@@ -17,7 +17,7 @@ use io::stdio::StdWriter;
 use io::buffered::LineBufferedWriter;
 use rt::crate_map::{ModEntry, CrateMap, iter_crate_map, get_crate_map};
 use str::StrSlice;
-use vec::ImmutableVector;
+use vec::{ImmutableVector, MutableTotalOrdVector};
 #[cfg(test)] use cast::transmute;
 
 struct LogDirective {
@@ -141,7 +141,14 @@ fn update_log_settings(crate_map: &CrateMap, settings: ~str) {
     if settings.len() > 0 {
         if settings == ~"::help" || settings == ~"?" {
             rterrln!("\nCrate log map:\n");
-            iter_crate_map(crate_map, |entry| rterrln!(" {}", entry.name));
+
+            let mut entries = ~[];
+            iter_crate_map(crate_map, |entry| entries.push(entry.name.to_owned()));
+            entries.sort();
+
+            for name in entries.iter() {
+                rterrln!(" {}", *name);
+            }
             unsafe { exit(1); }
         }
         dirs = parse_logging_spec(settings);