diff Doc/tools/node2label.pl @ 18002:45badfbfb00e legacy-trunk

New solution to the "Someone stuck a colon in that filename!" problem: Allow colons in the labels used for internal references, but do not expose them when generating filename.
author Fred Drake <fdrake@acm.org>
date Tue, 29 May 2001 19:53:46 +0000
parents 774817285b8c
children fe4071beff41
line wrap: on
line diff
--- a/Doc/tools/node2label.pl	Tue May 29 18:51:41 2001 +0000
+++ b/Doc/tools/node2label.pl	Tue May 29 19:53:46 2001 +0000
@@ -10,9 +10,16 @@
 my $key;
 # sort so that we get a consistent assignment for nodes with multiple labels 
 foreach $label (sort keys %external_labels) {
-  $key = $external_labels{$label};
-  $key =~ s|^/||;
-  $nodes{$key} = $label;
+  #
+  # If the label can't be used as a filename on non-Unix platforms,
+  # skip it.  Such labels may be used internally within the documentation,
+  # but will never be used for filename generation.
+  #
+  if ($label =~ /^([-.a-zA-Z0-9]+)$/) {
+    $key = $external_labels{$label};
+    $key =~ s|^/||;
+    $nodes{$key} = $label;
+  }
 }
 
 # This adds the "internal" labels added for indexing.  These labels will not