It's just an unfortunate ambiguous homonym. It's not just those two meanings either. There's about 20 different meanings for fix. The appropriate meaning will have to come from the context.
I fixed the text position.
- I corrected its position by changing it.
- I locked its position so that it won't change.
I fixed his meal.
- I prepared it.
- I corrected some problem with it.
The only way to avoid ambiguity is to use an appropriate synonym in lieu of the word 'Fix' or be sure that the context is unambiguous, such as in:
I need my cocaine fix.
The word fix comes from the Latin fixus, Perfect passive participle of fīgō, which means to fasten/fix, to transfix/piece, or to drive nails. So it didn't get the meaning "to correct" from there. I'm certain that the meaning "to correct" has been around for far longer than computers. For instance, the phrase "fixer-upper" meaning "a person who fixes things", was appearing in print as far back as 1932.
My guess is that since 'fix' has always included the meaning 'to fasten', and many things are repaired by fastening them, like a roof or a structure, the use came from the association with people 'fixing' things that have come unfastened to repair them.
Finally found something that looks definitive. http://www.etymonline.com/index.php?term=fix&allowed_in_frame=0
fix (v.) late 14c., "set (one's eyes or mind) on something," probably from O.Fr. *fixer, from fixe "fixed," from L. fixus "fixed, fast, immovable, established, settled," pp. of figere "to fix, fasten," from PIE base *dhigw- "to stick, to fix." Sense of "fasten, attach" is c.1400; that of "settle, assign" is pre-1500 and evolved into "adjust, arrange" (1660s), then "repair" (1737). Sense of "tamper with" (a fight, a jury, etc.) is 1790. As euphemism for "castrate a pet" it dates from 1930. Related: Fixed; fixedly (1590s); fixing.