A
patch is a piece of software designed to update a
computer program or its supporting data, to fix or improve it. This includes fixing
security vulnerabilities and other
bugs, with such patches usually called
bugfixes or
bug fixes, and improving the
usability or
performance. Although meant to fix problems, poorly designed patches can sometimes introduce new problems (see
software regressions). In some special cases updates may knowingly break the functionality, for instance, by removing components for which the update provider is no longer licensed or disabling a device.