Jelajahi Sumber

erlang: fix build on squeeze and precise

Check if defined decode of unicode atoms type.

(cherry picked from commit 63127b261668e0efdea5b0ddb5f16a03dd9f02bc)
Seudin Kasumovic 10 tahun lalu
induk
melakukan
3a9c549495
2 mengubah file dengan 13 tambahan dan 2 penghapusan
  1. 10 1
      modules/erlang/handle_emsg.c
  2. 3 1
      modules/erlang/pv_xbuff.c

+ 10 - 1
modules/erlang/handle_emsg.c

@@ -460,9 +460,13 @@ int handle_rex_call(cnode_handler_t *phandler,erlang_ref_ex_t *ref, erlang_pid *
 	 */
 
 	ei_get_type(request->buff,&request->index,&type,&size);
-
+#ifdef ERL_SMALL_ATOM_EXT
 	if (type == ERL_ATOM_EXT || type == ERL_SMALL_ATOM_EXT)
 	{
+#else
+	if (type == ERL_ATOM_EXT)
+	{
+#endif
 		if (ei_decode_atom(request->buff,&request->index,module))
 		{
 			encode_error_msg(response, ref, "error", "Failed to decode module name");
@@ -477,8 +481,13 @@ int handle_rex_call(cnode_handler_t *phandler,erlang_ref_ex_t *ref, erlang_pid *
 
 	ei_get_type(request->buff,&request->index,&type,&size);
 
+#ifdef ERL_SMALL_ATOM_EXT
 	if (type == ERL_ATOM_EXT || type == ERL_SMALL_ATOM_EXT)
 	{
+#else
+	if (type == ERL_ATOM_EXT)
+	{
+#endif
 		if (ei_decode_atom(request->buff,&request->index,method))
 		{
 			encode_error_msg(response, ref, "error", "Failed to decode method name");

+ 3 - 1
modules/erlang/pv_xbuff.c

@@ -977,7 +977,9 @@ int xavp_decode(ei_x_buff *xbuff, int *index, sr_xavp_t **xavp,int level)
 
 	switch (type) {
 	case ERL_ATOM_EXT:
-
+#ifdef ERL_SMALL_ATOM_EXT
+	case ERL_SMALL_ATOM_EXT:
+#endif
 		name.len = snprintf(_s,sizeof(_s),"a%d",counter++);
 		pbuf = (char*)pkg_realloc(pbuf,size+1);