mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-22 14:08:06 +01:00
- Added wstrndup() and WMGetFontName()
This commit is contained in:
@@ -49,6 +49,8 @@ Changes since wmaker 0.80.1:
|
||||
most once for each font in a fontset (eliminates a possible security exploit)
|
||||
- Fixed WMGetTextDefaultColor() not to retain the returned color. It returns
|
||||
only a reference to the internal color, which you shouldn't release
|
||||
- Added wstrndup()
|
||||
- Added WMGetFontName()
|
||||
|
||||
|
||||
Changes since wmaker 0.80.0:
|
||||
|
||||
@@ -764,6 +764,8 @@ WMFont* WMRetainFont(WMFont *font);
|
||||
|
||||
void WMReleaseFont(WMFont *font);
|
||||
|
||||
char* WMGetFontName(WMFont *font);
|
||||
|
||||
unsigned int WMFontHeight(WMFont *font);
|
||||
|
||||
Bool WMIsAntialiasedFont(WMFont *font);
|
||||
|
||||
@@ -242,6 +242,7 @@ void wrelease(void *ptr);
|
||||
void* wretain(void *ptr);
|
||||
|
||||
char* wstrdup(char *str);
|
||||
char* wstrndup(char *str, size_t len);
|
||||
|
||||
/* Concatenate str1 with str2 and return that in a newly malloc'ed string.
|
||||
* str1 and str2 can be any strings including static and constant strings.
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
build
|
||||
WINGs.c
|
||||
wings.so
|
||||
build
|
||||
*.pyc
|
||||
*.pyo
|
||||
|
||||
@@ -78,8 +78,8 @@
|
||||
#if defined(HAVE_SNPRINTF) && defined(HAVE_VSNPRINTF) && defined(HAVE_C99_VSNPRINTF)
|
||||
/* only include stdio.h if we are not re-defining snprintf or vsnprintf */
|
||||
#include <stdio.h>
|
||||
/* make the compiler happy with an empty file */
|
||||
void dummy_snprintf(void) {}
|
||||
/* make the compiler happy with an empty file */
|
||||
void dummy_snprintf(void) {}
|
||||
#else
|
||||
|
||||
#ifdef HAVE_LONG_DOUBLE
|
||||
@@ -749,14 +749,14 @@ static void dopr_outch(char *buffer, size_t *currlen, size_t maxlen, char c)
|
||||
}
|
||||
|
||||
#if !defined(HAVE_VSNPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
int vsnprintf (char *str, size_t count, const char *fmt, va_list args)
|
||||
int vsnprintf (char *str, size_t count, const char *fmt, va_list args)
|
||||
{
|
||||
return dopr(str, count, fmt, args);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if !defined(HAVE_SNPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
int snprintf(char *str,size_t count,const char *fmt,...)
|
||||
int snprintf(char *str,size_t count,const char *fmt,...)
|
||||
{
|
||||
size_t ret;
|
||||
va_list ap;
|
||||
@@ -771,7 +771,7 @@ static void dopr_outch(char *buffer, size_t *currlen, size_t maxlen, char c)
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_VASPRINTF
|
||||
int vasprintf(char **ptr, const char *format, va_list ap)
|
||||
int vasprintf(char **ptr, const char *format, va_list ap)
|
||||
{
|
||||
int ret;
|
||||
|
||||
@@ -788,7 +788,7 @@ static void dopr_outch(char *buffer, size_t *currlen, size_t maxlen, char c)
|
||||
|
||||
|
||||
#ifndef HAVE_ASPRINTF
|
||||
int asprintf(char **ptr, const char *format, ...)
|
||||
int asprintf(char **ptr, const char *format, ...)
|
||||
{
|
||||
va_list ap;
|
||||
int ret;
|
||||
@@ -803,9 +803,9 @@ static void dopr_outch(char *buffer, size_t *currlen, size_t maxlen, char c)
|
||||
|
||||
#ifdef TEST_SNPRINTF
|
||||
|
||||
int sprintf(char *str,const char *fmt,...);
|
||||
int sprintf(char *str,const char *fmt,...);
|
||||
|
||||
int main (void)
|
||||
int main (void)
|
||||
{
|
||||
char buf1[1024];
|
||||
char buf2[1024];
|
||||
|
||||
@@ -186,6 +186,21 @@ wstrdup(char *str)
|
||||
}
|
||||
|
||||
|
||||
char*
|
||||
wstrndup(char *str, size_t len)
|
||||
{
|
||||
char *copy;
|
||||
|
||||
assert(str!=NULL);
|
||||
|
||||
len = WMIN(len, strlen(str));
|
||||
copy = strncpy(wmalloc(len+1), str, len);
|
||||
copy[len] = 0;
|
||||
|
||||
return copy;
|
||||
}
|
||||
|
||||
|
||||
char*
|
||||
wstrconcat(char *str1, char *str2)
|
||||
{
|
||||
|
||||
@@ -529,6 +529,8 @@ WMIsAntialiasingEnabled(WMScreen *scrPtr)
|
||||
Bool
|
||||
WMIsAntialiasedFont(WMFont *font)
|
||||
{
|
||||
wassertrv(font!=NULL, False);
|
||||
|
||||
return font->antialiased;
|
||||
}
|
||||
|
||||
@@ -542,6 +544,15 @@ WMFontHeight(WMFont *font)
|
||||
}
|
||||
|
||||
|
||||
char*
|
||||
WMGetFontName(WMFont *font)
|
||||
{
|
||||
wassertrv(font!=NULL, NULL);
|
||||
|
||||
return font->name;
|
||||
}
|
||||
|
||||
|
||||
WMFont*
|
||||
WMDefaultSystemFont(WMScreen *scrPtr)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user