I have investigated further and it seems that pre-lock hook scripts on a 
specific working copy path[1] doesn't work in 1.14.0 (and up to r29050). 
Only pre-lock hook scripts on path *[2] works.

I made an initial note of this and then proceeded to work on the other 
patches. When I got back to this (well past midnight, which might have 
clouded my judgement) I thought that the map never found the path (as 
described above). However it turns out that the actual problem was already 
solved by the "LockCommand SetSelectedList" patch and I just misdiagnosed 
the whole thing. Adding insult to injury I misunderstood how std::map works 
and didn't notice that it actually use the operator<(CTSVNPath&, 
CTSVNPath&) function (which work perfectly fine).


*All in all, please ignore the "hookkey as CString" patch.*

Images for reference, in case someone else is struggling with pre-lock hook 
scripts in 1.14.0 and below.

[1] This hook script will not execute in 1.14.0 and below:
[image: wontwork.png]

[2] This hook script will execute (for all WCs):
[image: works.png]

söndag 10 januari 2021 kl. 21:34:34 UTC+1 skrev Stefan:

> Well, CTSVNPath has multiple private members, but when comparing paths 
> that should never matter because each member is constructed as necessary.
> If you have a situation where the hook scripts are not executed/found for 
> a specific path, I'd like to have a clear example of that situation so I 
> can fix the real problem - usind CString instead is not really a solution 
> but I think only a workaround in this case.
>

-- 
You received this message because you are subscribed to the Google Groups 
"TortoiseSVN-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tortoisesvn-dev/5941a4d3-ba10-4169-a5ef-0c3d29475b30n%40googlegroups.com.

Reply via email to