18

Circular duplicate links didn't used to be allowed, but I just did it:

How to access the system tray using the keyboard?

How to access (or switch between) tray icons with shortcut in windows?

question one

question two

  • Did you undo it? The first one isn't closed – FDinoff Jul 1 '13 at 3:18
  • @FDinoff yes, I undid it since I didn't actually want the circular reference to stay. If you look in the revision history you should see it. – nhinkle Jul 1 '13 at 3:21
  • 14
    // TODO: implement circular dependency checking oops... – Jarrod Dixon Jul 1 '13 at 3:29
  • 1
    What's the @@ button do? – Undo Jul 1 '13 at 3:30
  • @JarrodDixon I swear I was stopped once from making a circular reference, but maybe I'm conflating that with it stopping me from marking as a duplicate of a deleted question. Either way, could you make it status-planned if that's appropriate? – nhinkle Jul 1 '13 at 3:35
  • 1
    @Undo wouldn't you like to know! :P – nhinkle Jul 1 '13 at 3:37
  • No, the code used to be there, but most of the flagging/closing code was refactored. Part of the plan was to implement Tarjan's algorithm for finding circular dupes. – Jarrod Dixon Jul 1 '13 at 3:37
  • @nhinkle Really - superping? – Undo Jul 1 '13 at 3:43
  • @Undo it's a userscript that one of the SU mods wrote that copies the superping string for each user who voted to close a question. We use it to send reminders via chat to users who vote to migrate questions to SU that don't belong there. – nhinkle Jul 1 '13 at 3:47
  • @JarrodDixon with the automatic redirect for anonymous users on duplicates, what happens when there's a circular reference? – nhinkle Jul 1 '13 at 3:48
  • 2
    We get an exception in our logs. And I am deprived of my dinner. – Jarrod Dixon Jul 1 '13 at 3:51
  • @JarrodDixon I'm glad to hear that they take these things seriously over there. What happens to the user? "Oops, something went wrong" or "infinite redirect loop"? – nhinkle Jul 1 '13 at 3:54
  • Probably an infinite redirect loop on the client. – Jarrod Dixon Jul 1 '13 at 3:56
  • Possible duplicate: meta.stackexchange.com/questions/54024/… – Mateen Ulhaq Apr 2 '18 at 5:06
9

Alright, I've added some protection against this via a neat library that danielrbradley created.

There's sure to be some issues (which we'll log when a block occurs), but the base cases are covered (and unit tested, oh my!).

  • That was speedy! Thanks. – nhinkle Jul 1 '13 at 5:43
  • It was a regression that was totally my fault - I couldn't go home and leave it borked :) – Jarrod Dixon Jul 1 '13 at 5:45
  • 1
    Now the check is bit too strict. :/ – Shadow Jul 2 '13 at 10:56
  • FYI there is another regression. – Shadow May 11 '16 at 14:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .