C5 errors are caused by memory leaks in VFP applications. Memory leaks can happen all the time. As noted on the Wiki, doing your own memory variable garbage collection is a great way of reducing them but C5s also occur for all kinds of reasons.
I'd love to make a list of them here but first I want to rant:
SET("MESSAGE")
I just had an older app that has run for years just fine on Windows XP machines all over the place C5 at a customer location. C5 in all versions (VFP 6 through 8).
Tracing the code led me to one line that said myVar = SET("MESSAGE")
Surely it couldn't be the culprit- could it? It was. I even tested it by running a single 5 line application that did a SET("MESSAGE").
Changing the line to myVar = "" and the application worked just fine.
Now why didn't this error out on every machine for the past few years? It was a brand new machine (Dell). Not quite sure what to think but definitely not the way to end the weekend.
Any ideas? Anyone got one to trump that one?
I'd love to make a list of them here but first I want to rant:
SET("MESSAGE")
I just had an older app that has run for years just fine on Windows XP machines all over the place C5 at a customer location. C5 in all versions (VFP 6 through 8).
Tracing the code led me to one line that said myVar = SET("MESSAGE")
Surely it couldn't be the culprit- could it? It was. I even tested it by running a single 5 line application that did a SET("MESSAGE").
Changing the line to myVar = "" and the application worked just fine.
Now why didn't this error out on every machine for the past few years? It was a brand new machine (Dell). Not quite sure what to think but definitely not the way to end the weekend.
Any ideas? Anyone got one to trump that one?
Comments