of it is not possible. If just somebody in the world realizes the flaw he can contact the companies in question and point this out to them and for a fee do the work of recompiling their application for them.
You are assuming here, that any given customer will sit and wait until a suitable patch is released. That may be true for many and that's what I wrote about my earlier job in my previous mail. But if this is an important feature than he will pay for it because he needs to. If this is released for others this is no problem because for others apparently it may not be that vital otherwise they would have paid for it in the first place.
If you can get the fully cost from the first customer, yes. But often you can't. So you develop it for say 50% of the cost and hope that the rest of your customers will pay the rest. Usually this will work out fine.
However with the GPL this is impossible. You almost must have the full cost upfront which means that you have to spend more time negotiating to get the whole cost covered.
Worse sometimes you miscalculate how must something costs, but that it not that bad if the code is proprietary. Now when you know the cost you know what to charge the rest of your customers.
Another implicit assumption here is that customers pay for a given piece of code. In my opinion they are often not doing that. Instead they pay for a service. They pay for the service that they have someone whom they can contact and who will code if neccessary.
That is absolutely correct. However using the GPL would force me to charge everybody that calls the full cost for each improvement. Often the cost will not outweigh the benefit for them so no deal unless I can reduce the price somehow. With the GPL this is impossible.
So even if they use an OS code that doesn't imply that they never again will pay for any service based on the assumption that any given functionality they will need will turn up sooner or later.
Of course not, but some smaller customer might not have so much money so they often hope somebody else will have the same problem and pay for it.
Most larger customers (and I think that's the one who are intersting for business models) are not willing to bet their business on the fancy of some developers. They want to have plans they can follow so they in turn can tell their customers when and how a given problem will be solved. That's why xGPL also works for companies.
The problem is not whether it works or not the problem is the drawbacks. As I have said before sometimes this is worth it, sometimes it is not.
I was once arguing with collegues because they maintained that if MS gave their code for Word to OS then nobody would buy Word anymore and they couldn't make any money from it. I stil say, and that is the point here as well, that this is not true. Private indivudals won't pay anymore, but usually they are not the money anyway. Really large companies, with their own development staff might also choose to develop and maintain themself, and there may be some loss. But the majority of smaller companies would still pay for the service of maintainence and for adding features they need and I bet that even bigger companies who could afford their own development wouldn't choose to do that. Why should they? It's more sensible to let somebody develop that who know about it. The code is there as an insurance should the developer ever go down, but not for developing by everybody else.
Yes, sometimes this will work out fine, but as I said it comes with a cost and the GPL limits want and how you can offer things to market quite severly.
The problem with things like Word processors is that few users use or need new features so the market for enhancements will be quite limited.