FcAtomicCreate

3 Fontconfig &version;

FcAtomicCreate

create an FcAtomic object

    #include <fontconfig/fontconfig.h>

    	    FcAtomic * FcAtomicCreate
    		const FcChar8   *file

## Description

Creates a data structure containing data needed to control access to `file`. Writing is done to a separate file. Once that file is complete, the original configuration file is atomically replaced so that reading process always see a consistent and complete file without the need to lock for reading.

FcAtomicLock

3 Fontconfig &version;

FcAtomicLock

lock a file

    #include <fontconfig/fontconfig.h>

    	    FcBool FcAtomicLock
    		FcAtomic *atomic

## Description

Attempts to lock the file referenced by `atomic`. Returns FcFalse if the file is already locked, else returns FcTrue and leaves the file locked.

FcAtomicNewFile

3 Fontconfig &version;

FcAtomicNewFile

return new temporary file name

    #include <fontconfig/fontconfig.h>

    	    FcChar8 * FcAtomicNewFile
    		FcAtomic *atomic

## Description

Returns the filename for writing a new version of the file referenced by `atomic`.

FcAtomicOrigFile

3 Fontconfig &version;

FcAtomicOrigFile

return original file name

    #include <fontconfig/fontconfig.h>

    	    FcChar8 * FcAtomicOrigFile
    		FcAtomic *atomic

## Description

Returns the file referenced by `atomic`.

FcAtomicReplaceOrig

3 Fontconfig &version;

FcAtomicReplaceOrig

replace original with new

    #include <fontconfig/fontconfig.h>

    	    FcBool FcAtomicReplaceOrig
    		FcAtomic *atomic

## Description

Replaces the original file referenced by `atomic` with the new file. Returns FcFalse if the file cannot be replaced due to permission issues in the filesystem. Otherwise returns FcTrue.

FcAtomicDeleteNew

3 Fontconfig &version;

FcAtomicDeleteNew

delete new file

    #include <fontconfig/fontconfig.h>

    	    void FcAtomicDeleteNew
    		FcAtomic *atomic

## Description

Deletes the new file. Used in error recovery to back out changes.

FcAtomicUnlock

3 Fontconfig &version;

FcAtomicUnlock

unlock a file

    #include <fontconfig/fontconfig.h>

    	    void FcAtomicUnlock
    		FcAtomic *atomic

## Description

Unlocks the file.

FcAtomicDestroy

3 Fontconfig &version;

FcAtomicDestroy

destroy an FcAtomic object

    #include <fontconfig/fontconfig.h>

    	    void FcAtomicDestroy
    		FcAtomic *atomic

## Description

Destroys `atomic`.