Remove mbcs.c/h
Currently unused by Geany.
This commit is contained in:
parent
efc40f4007
commit
0a6acff818
@ -88,8 +88,6 @@ libctags_la_SOURCES = \
|
|||||||
main/lxpath.c \
|
main/lxpath.c \
|
||||||
main/main.c \
|
main/main.c \
|
||||||
main/main.h \
|
main/main.h \
|
||||||
main/mbcs.c \
|
|
||||||
main/mbcs.h \
|
|
||||||
main/mio.c \
|
main/mio.c \
|
||||||
main/mio.h \
|
main/mio.h \
|
||||||
main/nestlevel.c \
|
main/nestlevel.c \
|
||||||
|
@ -1,112 +0,0 @@
|
|||||||
/*
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* Copyright (c) 2015, vim-jp
|
|
||||||
*
|
|
||||||
* This source code is released for free distribution under the terms of the
|
|
||||||
* GNU General Public License version 2 or (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This module contains functions for checking multibyte character set.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* INCLUDE FILES
|
|
||||||
*/
|
|
||||||
#ifndef __USE_GNU
|
|
||||||
# define __USE_GNU
|
|
||||||
#endif
|
|
||||||
#include "general.h" /* must always come first */
|
|
||||||
|
|
||||||
#ifdef HAVE_ICONV
|
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include <iconv.h>
|
|
||||||
#include <errno.h>
|
|
||||||
#include "options.h"
|
|
||||||
#include "mbcs.h"
|
|
||||||
#include "routines.h"
|
|
||||||
|
|
||||||
static iconv_t iconv_fd = (iconv_t) -1;
|
|
||||||
|
|
||||||
extern bool openConverter (char* inputEncoding, char* outputEncoding)
|
|
||||||
{
|
|
||||||
if (!inputEncoding || !outputEncoding)
|
|
||||||
{
|
|
||||||
static bool warn = false;
|
|
||||||
/* --output-encoding is specified but not --input-encoding provided */
|
|
||||||
if (!warn && outputEncoding)
|
|
||||||
{
|
|
||||||
error (WARNING, "--input-encoding is not specified");
|
|
||||||
warn = true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
iconv_fd = iconv_open(outputEncoding, inputEncoding);
|
|
||||||
if (iconv_fd == (iconv_t) -1)
|
|
||||||
{
|
|
||||||
error (FATAL,
|
|
||||||
"failed opening encoding from '%s' to '%s'", inputEncoding, outputEncoding);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
extern bool isConverting ()
|
|
||||||
{
|
|
||||||
return iconv_fd != (iconv_t) -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
extern bool convertString (vString *const string)
|
|
||||||
{
|
|
||||||
size_t dest_len, src_len;
|
|
||||||
char *dest, *dest_ptr, *src;
|
|
||||||
if (iconv_fd == (iconv_t) -1)
|
|
||||||
return false;
|
|
||||||
src_len = vStringLength (string);
|
|
||||||
/* Should be longest length of bytes. so maybe utf8. */
|
|
||||||
dest_len = src_len * 4;
|
|
||||||
dest_ptr = dest = xCalloc (dest_len, char);
|
|
||||||
if (!dest)
|
|
||||||
return false;
|
|
||||||
src = vStringValue (string);
|
|
||||||
retry:
|
|
||||||
if (iconv (iconv_fd, &src, &src_len, &dest_ptr, &dest_len) == (size_t) -1)
|
|
||||||
{
|
|
||||||
if (errno == EILSEQ)
|
|
||||||
{
|
|
||||||
*dest_ptr++ = '?';
|
|
||||||
dest_len--;
|
|
||||||
src++;
|
|
||||||
src_len--;
|
|
||||||
verbose (" Encoding: %s\n", strerror(errno));
|
|
||||||
goto retry;
|
|
||||||
}
|
|
||||||
eFree (dest);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
dest_len = dest_ptr - dest;
|
|
||||||
|
|
||||||
vStringClear (string);
|
|
||||||
if (vStringSize (string) < dest_len + 1)
|
|
||||||
vStringResize (string, dest_len + 1);
|
|
||||||
memcpy (vStringValue (string), dest, dest_len + 1);
|
|
||||||
vStringLength (string) = dest_len;
|
|
||||||
eFree (dest);
|
|
||||||
|
|
||||||
iconv (iconv_fd, NULL, NULL, NULL, NULL);
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
extern void closeConverter ()
|
|
||||||
{
|
|
||||||
if (iconv_fd != (iconv_t) -1)
|
|
||||||
{
|
|
||||||
iconv_close(iconv_fd);
|
|
||||||
iconv_fd = (iconv_t) -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* HAVE_ICONV */
|
|
@ -1,22 +0,0 @@
|
|||||||
/*
|
|
||||||
* $Id$
|
|
||||||
*
|
|
||||||
* Copyright (c) 2015, vim-jp
|
|
||||||
*
|
|
||||||
* This source code is released for free distribution under the terms of the
|
|
||||||
* GNU General Public License version 2 or (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This module contains functions for checking multibyte character set.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "general.h" /* must always come first */
|
|
||||||
#include "vstring.h"
|
|
||||||
|
|
||||||
#ifdef HAVE_ICONV
|
|
||||||
|
|
||||||
extern bool isConverting (void);
|
|
||||||
extern bool openConverter (char*, char*);
|
|
||||||
extern bool convertString (vString *const);
|
|
||||||
extern void closeConverter (void);
|
|
||||||
|
|
||||||
#endif /* HAVE_ICONV */
|
|
Loading…
x
Reference in New Issue
Block a user