ec2f9cd20b7c6d615c233ab4f16be579b9c85ae0
braney
  Tue Nov 15 15:48:41 2022 -0800
put track duplication under hg.conf control

diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c
index adfe39c..f9595c6 100644
--- src/hg/hgTracks/hgTracks.c
+++ src/hg/hgTracks/hgTracks.c
@@ -6609,30 +6609,33 @@
     }
 }
 
 static struct hash *hashTracksAndSubtracksFromList(struct track *list)
 /* Make a hash and put all of tracks and subtracks on it. */
 {
 struct hash *hash = hashNew(12);
 rHashList(hash, list);
 return hash;
 }
 
 void makeDupeTracks(struct track **pTrackList)
 /* Make up dupe tracks and append to list. Have to also crawl
  * through list to add subtracks */
 {
+if (!dupTrackEnabled())
+    return;
+
 struct dupTrack *dupList = dupTrackListFromCart(cart);
 if (dupList == NULL)
     return;
 
 /* Make up hash of tracks for quick finding of sources */
 struct hash *trackHash = hashTracksAndSubtracksFromList(*pTrackList);
 
 struct dupTrack *dup;
 for (dup = dupList; dup != NULL; dup = dup->next)
     {
     struct track *source = hashFindVal(trackHash, dup->source);
     if (source != NULL)
         {
 	struct track *track = CloneVar(source);
 	struct trackDb *tdb = track->tdb = dupTdbFrom(source->tdb, dup);