| Summary: | kdiff3 can't read files from bash <() | ||
|---|---|---|---|
| Product: | [Applications] kdiff3 | Reporter: | Enmk <v.nemkov> |
| Component: | application | Assignee: | michael <reeves.87> |
| Status: | RESOLVED INTENTIONAL | ||
| Severity: | normal | ||
| Priority: | NOR | ||
| Version First Reported In: | 1.9.5 | ||
| Target Milestone: | --- | ||
| Platform: | Neon | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Enmk
2022-07-20 13:14:47 UTC
This particular example actually reveals a bug is kdiff3's file validation. Non-normal files such as pipes are supposed to be skipped. Depending there nature weird things can happen. In this case a fictitious filename is derived from the link. I will look into what happens when actually files are passed using this syntax. After examining this I have determined it is not technically feasible for kdiff3 to support this. Bugs such as this https://bugreports.qt.io/browse/QTBUG-15261 are the reason. Duplicating code in the form of direct c/c++ style I/O operations is not a practical solution. KDiff3's primary function of comparing normal files is not compromised by lack of pipe/redirect support. Interestingly trying this syntax with real files does results in kdiff3 completely ignoring the redirect. This is why explicit parameters are used. The specific example used here and similar attempts to directly pipe command output will now generate the intended error instead of sending a bogus file name to KIO/Qt. |