Page MenuHomePhabricator

Huggle randomly sends warnings for reverts that didn't happen
Closed, ResolvedPublic

Description

From mail:

just posted in Huggle about this. It seems that Huggle has been posting revert notifications for the wrong edits (I haven't reverted these edits and am pretty sure I didn't press the warn-only button on them):

<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:2600:8802:1100:4790:1051:653A:3792:EF2D&diff=prev&oldid=773534187
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:142.105.144.236&diff=prev&oldid=773534474
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:2601:43:4100:9B76:64B4:F04A:EC47:11D&diff=prev&oldid=773534581
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:2601:805:400:E074:9D9B:28DE:ADEB:E664&diff=prev&oldid=773534787
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:71.184.193.81&diff=prev&oldid=773534919
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:Corysargent&diff=773535194&oldid=773534054
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:50.4.236.254&diff=773535357&oldid=773528953
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:Jakiefatso&diff=773535481&oldid=773528893
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:84.135.134.196&diff=773535607&oldid=773528091
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:78.16.56.239&action=history - two here
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:2601:643:202:88E0:D963:12CE:8B97:27B7&diff=773535845&oldid=773527453
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:2602:306:CDA2:E890:40DB:FFF3:B347:1997&action=history - two here
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:Tw59&diff=773536118&oldid=773526725
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:Wikajazzkd&diff=773536183&oldid=773526414
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:2600:1:91D6:619B:9975:4F40:5667:8EF1&diff=773536306&oldid=773526139
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:142.255.224.80&diff=773536442&oldid=773525445
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:95.144.131.177&diff=773536537&oldid=773524790
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:Hot_British&diff=773536748&oldid=773525603
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:Klyxar&diff=773537142&oldid=773342874
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:24.181.227.124&diff=773537513&oldid=773341969
<Krenair> https://en.wikipedia.org/w/index.php?title=User_talk:Sc30CLUTCH&diff=773537717&oldid=773537451

This involves a couple of different runs of Huggle, but the most recent one was built from the latest master: 33a2ed20635dba562dad8d05516cbc0045364cfe

Event Timeline

Mentioned commit id is irrelevant though could be anywhere from 3.1.21

Petrb triaged this task as Unbreak Now! priority.Apr 4 2017, 8:57 AM

Is there any simple step to reproduce this?

It might be also useful if someone could try to identify all users who use this version of huggle (3.2.0) either by scanning the edit summaries or huggle3.css and then notify these users about this issue

To reproduce you can revert and warn anything, huggle obviously use next edit as dependency for rollback

The problem is caused by possible change in revert logic in mainwindow.cpp (I don't know which commit caused this though) it seems that now for some reason we jump to next edit right after call to Revert() and subsequent WarnUser call work with this->CurrentEdit, which in that moment points to next edit in queue (or nullptr in case there is no more).

I am working on a fix

Thanks @Petrb.. If I had more time yesterday I would've tried to hunt the issue down properly.

@Petrb I pulled the latest copy including 13e64040557588fedf3fe4431b2c29b0639cbc84 "fixed the broken revert flow", went into huggle/huggle_release, ran make, sudo make install, huggle, and it still does this.

it works to me: https://en.wikipedia.org/wiki/Special:Contributions/Petrb

I don't know how clean your repository is and I don't really know if sudo make install is working reliably, try to do a fresh clone, or just delete huggle_release folder, run configure script again and then execute huggle from release folder. You probably still run the old binary.

(ls -l which huggle will show you time from which this binary is)

Yeah, old version: -rwxr-xr-x 1 root root 3812720 Apr 3 00:12 /usr/local/bin/huggle

deleted huggle_release and configured etc. again